If I use this line, everything works as expected (Samples/Demo6/Demo6 executes properly w/ OpenGL renderer)
Code: Select all
./configure --enable-debug --disable-expat --disable-xerces-c --with-irrlicht-incdir=/usr/local/share/irrlicht/include --with-irrlicht-libdir=/usr/local/share/irrlicht/lib/Linux --enable-static --disable-shared --disable-irrlicht-renderer
But if I use this line... executing Samples/Demo6/Demo6 w/ OpenGL fails
Code: Select all
./configure --enable-debug --disable-expat --disable-xerces-c --with-irrlicht-incdir=/usr/local/share/irrlicht/include --with-irrlicht-libdir=/usr/local/share/irrlicht/lib/Linux --enable-static --disable-shared --enable-irrlicht-renderer
Here's the output
Code: Select all
CEGUI::RendererException in file CEGUIOpenGLTexture.cpp(139) : OpenGLTexture::loadFromFile - DevILImageCodec - Official DevIL based image codec failed to load image 'logo.png'.
An exception was thrown within the sample framework:
OpenGLTexture::loadFromFile - DevILImageCodec - Official DevIL based image codec failed to load image 'logo.png'.
Clearly there is a problem with PNG loading, although I'm not sure why that should be the case (both build statements appear functionally identical)
w/o Irrlicht
Code: Select all
make[1]: Entering directory `libs/cegui/Samples/Demo6'
g++ -DHAVE_CONFIG_H -I. -I../../cegui/include -I../../cegui/include -I../../Samples/common/include -DCEGUI_STATIC -DDEBUG -g -O2 -MT Demo6-Sample_Demo6.o -MD -MP -MF .deps/Demo6-Sample_Demo6.Tpo -c -o Demo6-Sample_Demo6.o `test -f 'Sample_Demo6.cpp' || echo './'`Sample_Demo6.cpp
mv -f .deps/Demo6-Sample_Demo6.Tpo .deps/Demo6-Sample_Demo6.Po
/bin/bash ../../libtool --tag=CXX --mode=link g++ -g -O2 -o Demo6 Demo6-Sample_Demo6.o ../../cegui/src/libCEGUIBase.la ../../Samples/common/src/libCEGUISampleHelper.la ../../cegui/src/WindowRendererSets/Falagard/libCEGUIFalagardWRBase.la ../../cegui/src/ImageCodecModules/DevILImageCodec/libCEGUIDevILImageCodec.la ../../cegui/src/XMLParserModules/TinyXMLParser/libCEGUITinyXMLParser.la -lpthread -ldl
libtool: link: g++ -g -O2 -o Demo6 Demo6-Sample_Demo6.o ../../cegui/src/.libs/libCEGUIBase.a ../../Samples/common/src/.libs/libCEGUISampleHelper.a /media/Media/Coding/Ships/libs/cegui/cegui/src/RendererModules/OpenGL/.libs/libCEGUIOpenGLRenderer.a -lglut -lGLU -lGL -lSM -lICE -lGLEW ../../cegui/src/WindowRendererSets/Falagard/.libs/libCEGUIFalagardWRBase.a ../../cegui/src/ImageCodecModules/DevILImageCodec/.libs/libCEGUIDevILImageCodec.a /usr/lib/libILU.so /usr/lib/libIL.so /usr/lib/libtiff.so -lpng12 -lmng /usr/lib/liblcms.so /usr/lib/libjpeg.so -lXpm -lXcursor -lXxf86vm ../../cegui/src/XMLParserModules/TinyXMLParser/.libs/libCEGUITinyXMLParser.a /media/Media/Coding/Ships/libs/cegui/cegui/src/.libs/libCEGUIBase.a /usr/lib/libfreetype.so -lz -lpcre -ltinyxml -lpthread -ldl
make[1]: Leaving directory `libs/cegui/Samples/Demo6'
w/ Irrlicht
Code: Select all
make[1]: Entering directory `libs/cegui/Samples/Demo6'
g++ -DHAVE_CONFIG_H -I. -I../../cegui/include -I../../cegui/include -I../../Samples/common/include -DCEGUI_STATIC -DDEBUG -g -O2 -MT Demo6-Sample_Demo6.o -MD -MP -MF .deps/Demo6-Sample_Demo6.Tpo -c -o Demo6-Sample_Demo6.o `test -f 'Sample_Demo6.cpp' || echo './'`Sample_Demo6.cpp
mv -f .deps/Demo6-Sample_Demo6.Tpo .deps/Demo6-Sample_Demo6.Po
/bin/bash ../../libtool --tag=CXX --mode=link g++ -g -O2 -o Demo6 Demo6-Sample_Demo6.o ../../cegui/src/libCEGUIBase.la ../../Samples/common/src/libCEGUISampleHelper.la ../../cegui/src/WindowRendererSets/Falagard/libCEGUIFalagardWRBase.la ../../cegui/src/ImageCodecModules/DevILImageCodec/libCEGUIDevILImageCodec.la ../../cegui/src/XMLParserModules/TinyXMLParser/libCEGUITinyXMLParser.la -lpthread -ldl
libtool: link: g++ -g -O2 -o Demo6 Demo6-Sample_Demo6.o ../../cegui/src/.libs/libCEGUIBase.a ../../Samples/common/src/.libs/libCEGUISampleHelper.a /media/Media/Coding/Ships/libs/cegui/cegui/src/RendererModules/OpenGL/.libs/libCEGUIOpenGLRenderer.a -lglut -lGLU -lGL -lSM -lICE -lGLEW /media/Media/Coding/Ships/libs/cegui/cegui/src/RendererModules/Irrlicht/.libs/libCEGUIIrrlichtRenderer.a -L/usr/local/share/irrlicht/lib/Linux -lIrrlicht ../../cegui/src/WindowRendererSets/Falagard/.libs/libCEGUIFalagardWRBase.a ../../cegui/src/ImageCodecModules/DevILImageCodec/.libs/libCEGUIDevILImageCodec.a /usr/lib/libILU.so /usr/lib/libIL.so /usr/lib/libtiff.so -lpng12 -lmng /usr/lib/liblcms.so /usr/lib/libjpeg.so -lXpm -lXcursor -lXxf86vm ../../cegui/src/XMLParserModules/TinyXMLParser/.libs/libCEGUITinyXMLParser.a /media/Media/Coding/Ships/libs/cegui/cegui/src/.libs/libCEGUIBase.a /usr/lib/libfreetype.so -lz -lpcre -ltinyxml -lpthread -ldl
make[1]: Leaving directory `libs/cegui/Samples/Demo6'
If I replace all the PNGs with GIFs, the OpenGL renderer loads properly (albeit with the random GIF I grabbed).
Tangentially, the Irrlicht renderer for Demo6 (for example) just renders a blank/black screen initially. After replacing the PNGs with GIFs, it barfs on the invalid images. The lack of any visible interface seems consistent with what I was experiencing in my application, sadly. Not quite sure what is up with CEGUI barfing on PNGs following Irrlicht inclusion though.
edit: just to head off future problems, I rolled back to Irrlicht 1.7.2, but this seems to have fixed the problem. I'm just going to leave this here as a warning against pairing up unstable versions in early dev