[osg-users] PNG Library Crashing - 32 vs 64 bit mismatch possible

Dave Sargrad davidsargrad at hotmail.com
Sun Apr 12 15:20:32 PDT 2015


Hi,

I've been struggling to get the PNG plugin working. I've built it, but the cookbook_02_7 is crashing down inside libpng16.dll.


I have a couple of questions.
1] I would have thought that I am doing a 64-bit build, since I have a 64-bit OS. However when I run cmake/configure I see it report 32-bit architecture detected.


> 
> 32 bit architecture detected
> 3rdParty-Package ENV variable found:C:\osg\OpenSceneGraph-3.2.2-rc2\3rdParty/x86
> Could NOT find LibXml2 (missing:  LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) 
> Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE) 
> Could NOT find CURL (missing:  CURL_LIBRARY CURL_INCLUDE_DIR) 
> Could NOT find SDL (missing:  SDL_LIBRARY SDL_INCLUDE_DIR) 
> Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE) 
> Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE) 
> Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE) 
> Found unsuitable Qt version "" from NOTFOUND
> Could NOT find Qt3 (missing:  QT_QT_LIBRARY QT_INCLUDE_DIR QT_MOC_EXECUTABLE) 
> Could NOT find GLUT (missing:  GLUT_glut_LIBRARY GLUT_INCLUDE_DIR) 
> Could NOT find wxWidgets (missing:  wxWidgets_FOUND) 
> Found PNG: optimized;C:/osg/OpenSceneGraph-3.2.2-rc2/3rdParty/x86/lib/libpng16d.lib;debug;C:/osg/OpenSceneGraph-3.2.2-rc2/3rdParty/x86/lib/libpng16.lib (found version "1.6.7") 
> Could NOT find TIFF (missing:  TIFF_LIBRARY TIFF_INCLUDE_DIR) 
> Configuring done
> Generating done
> 


So I have been pointing my cookbooks (osgrecipes) to the x86 versions found in the 3rdParty folder: example C:/osg/OpenSceneGraph-3.2.2-rc2/3rdParty/x86/lib/libpng16.lib is the value I have set PNG_LIBRARY to.

The current callstack I see when I crash is as follows:

> 
>  	005dd4a8()	Unknown
>  	[Frames below may be incorrect and/or missing]	
>  	libpng16.dll!004dba8c()	Unknown
> >	osgdb_pngd.dll!ReaderWriterPNG::readPNGStream(std::basic_istream<char,std::char_traits<char> > & fin) Line 202	C++
>  	osgdb_pngd.dll!ReaderWriterPNG::readImage(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & file, const osgDB::Options * options) Line 381	C++
>  	osg100-osgDBd.dll!osgDB::Registry::ReadImageFunctor::doRead(osgDB::ReaderWriter & rw) Line 915	C++
>  	osg100-osgDBd.dll!osgDB::Registry::read(const osgDB::Registry::ReadFunctor & readFunctor) Line 1175	C++
>  	osg100-osgDBd.dll!osgDB::Registry::readImplementation(const osgDB::Registry::ReadFunctor & readFunctor, osgDB::Options::CacheHintOptions cacheHint) Line 1278	C++
>  	osg100-osgDBd.dll!osgDB::Registry::readImageImplementation(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & fileName, const osgDB::Options * options) Line 1360	C++
>  	osg100-osgDBd.dll!osgDB::Registry::readImage(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & fileName, const osgDB::Options * options) Line 221	C++
>  	osg100-osgDBd.dll!osgDB::readImageFile(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & filename, const osgDB::Options * options) Line 43	C++
>  	cookbook_02_07d.exe!osgDB::readImageFile(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & filename) Line 82	C++
>  	cookbook_02_07d.exe!main(int argc, char * * argv) Line 16	C++
>  	[External Code]	
> 
> 



Any suggestions would be appreciated.
Cheers,
Dave

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=63354#63354








More information about the osg-users mailing list