[SOLVED] Help Building CEGUI for OGRE 1.9
Posted: Mon Aug 05, 2013 17:02
I have been trying to get CEGUI built for OGRE 1.9 on VS2010 x64 by following the instructions for CEGUI 8.x on Windows here :
http://www.cegui.org.uk/wiki/index.php/Building_CEGUI_for_Ogre_/_OgreRenderer
First, I built the dependencies and moved the dependencies folder to the cegui-0.8.2 folder. This appeared to go smoothly, I didn't change anything just let it do the defaults options for building.
Next I did the first Cmake Configure on the cegui lib, followed the instructions for checking CEGUI RENDERER OGRE and the OGRE_FOUND, OGRE_INCLUDE_DIR and OGRE_LIBRARIES values.
NOTE: One question here, Ogre has an OgreMain.dll for release and an OgreMain_d.dll for debug as noted in the tutorial, however it doesn't say what to do about this. What am I supposed to do for this? I just specified OGRE_LIBRARIES as the release version dll on this attempt.
Finally I run configure again, and this is my output:
Could NOT find MINIZIP (missing: MINIZIP_LIB MINIZIP_LIB_DBG MINIZIP_H_PATH)
Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
Could NOT find FRIBIDI (missing: FRIBIDI_FOUND_ALL_LIBS FRIBIDI_FOUND_ALL_LIBS_DBG FRIBIDI_INCLUDE_DIR)
Could NOT find IRRLICHT (missing: IRRLICHT_LIB IRRLICHT_H_PATH)
Could NOT find OGRE (missing: OGRE_LIB OGRE_H_PATH)
Could NOT find OIS (missing: OIS_LIB OIS_H_PATH)
Could NOT find DIRECTFB (missing: DIRECTFB_LIB DIRECTFB_LIB_DBG DIRECTFB_H_PATH)
Could NOT find OPENGLES (missing: OPENGLES_LIB OPENGLES_H_PATH)
Could NOT find XERCESC (missing: XERCESC_LIB XERCESC_LIB_DBG XERCESC_H_PATH)
Could NOT find LibXml2 (missing: LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR)
Could NOT find TINYXML (missing: TINYXML_LIB TINYXML_LIB_DBG TINYXML_H_PATH)
Could NOT find RAPIDXML (missing: RAPIDXML_H_PATH)
Could NOT find IL (missing: IL_LIB IL_LIB_DBG IL_H_PATH)
Could NOT find ILU (missing: ILU_LIB ILU_LIB_DBG)
Could NOT find FREEIMAGE (missing: FREEIMAGE_LIB FREEIMAGE_LIB_DBG FREEIMAGE_H_PATH)
Could NOT find CORONA (missing: CORONA_LIB CORONA_LIB_DBG CORONA_H_PATH)
Could NOT find PVRTOOLS (missing: PVRTOOLS_LIB PVRTOOLS_H_PATH)
Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE)
Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS)
Could NOT find Boost
Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
Some or all of the gtk libraries were not found. (missing: GTK2_GTK_LIBRARY GTK2_GTK_INCLUDE_DIR GTK2_GLIB_INCLUDE_DIR GTK2_GLIBCONFIG_INCLUDE_DIR GTK2_GLIB_LIBRARY GTK2_GDK_INCLUDE_DIR GTK2_GDKCONFIG_INCLUDE_DIR GTK2_GDK_LIBRARY)
Configuring done
Is this right? For this attempt I went ahead and continued and hit generate, opened the cegui.sln, and ran in to a few more questions.
It says for CEGUIOgreRenderer to add BOOST_ROOT to additional include directories (ConfigProps->C/C++->AdditionalIncludeDirectories I assume), and to add libraries to additional library directories. Now for me I have Boost_FILESYSTEM_LIBRARY and Boost_REGEX_LIBRARY. Is this what the additional library directories are? Not sure here. Anyway, I added both of those to additional library directories in the linker section. Is this correct? If not what do I do?
Then I built the project on debug and got these errors.
Error 127 error LNK1107: invalid or corrupt file: cannot read at 0x320 C:\Shared\OGRE_SNAPSHOT\OGRE-SDK-1.9.0-vc100-amd64-18.04.2013\bin\Release\OgreMain.dll 1 1 CEGUIOgreRenderer-0
Error 129 error C1083: Cannot open include file: 'boost/thread/tss.hpp': No such file or directory c:\shared\ogre_snapshot\ogre-sdk-1.9.0-vc100-amd64-18.04.2013\include\ogre\threading\OgreThreadHeadersBoost.h 37 1 CEGUISampleFramework-0.8
Error 137 error C1083: Cannot open include file: 'boost/thread/tss.hpp': No such file or directory c:\shared\ogre_snapshot\ogre-sdk-1.9.0-vc100-amd64-18.04.2013\include\ogre\threading\OgreThreadHeadersBoost.h 37 1 CEGUISampleFramework-0.8
Error 31 error C2065: 'CEGUI_NEW' : undeclared identifier C:\Shared\OGRE_SNAPSHOT\cegui-0.8.2\cegui\src\RendererModules\Direct3D10\Renderer.cpp 60 1 CEGUIDirect3D10Renderer-0
Error 32 error C2143: syntax error : missing ';' before 'CEGUI::DefaultResourceProvider' C:\Shared\OGRE_SNAPSHOT\cegui-0.8.2\cegui\src\RendererModules\Direct3D10\Renderer.cpp 60 1 CEGUIDirect3D10Renderer-0
I'm sure I went wrong in multiple spots, hopefully someone can help me out here.
Thanks in advance.
UPDATE: I used the precompiled libraries from transporter on the ogre forums.
http://www.cegui.org.uk/wiki/index.php/Building_CEGUI_for_Ogre_/_OgreRenderer
First, I built the dependencies and moved the dependencies folder to the cegui-0.8.2 folder. This appeared to go smoothly, I didn't change anything just let it do the defaults options for building.
Next I did the first Cmake Configure on the cegui lib, followed the instructions for checking CEGUI RENDERER OGRE and the OGRE_FOUND, OGRE_INCLUDE_DIR and OGRE_LIBRARIES values.
NOTE: One question here, Ogre has an OgreMain.dll for release and an OgreMain_d.dll for debug as noted in the tutorial, however it doesn't say what to do about this. What am I supposed to do for this? I just specified OGRE_LIBRARIES as the release version dll on this attempt.
Finally I run configure again, and this is my output:
Could NOT find MINIZIP (missing: MINIZIP_LIB MINIZIP_LIB_DBG MINIZIP_H_PATH)
Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
Could NOT find FRIBIDI (missing: FRIBIDI_FOUND_ALL_LIBS FRIBIDI_FOUND_ALL_LIBS_DBG FRIBIDI_INCLUDE_DIR)
Could NOT find IRRLICHT (missing: IRRLICHT_LIB IRRLICHT_H_PATH)
Could NOT find OGRE (missing: OGRE_LIB OGRE_H_PATH)
Could NOT find OIS (missing: OIS_LIB OIS_H_PATH)
Could NOT find DIRECTFB (missing: DIRECTFB_LIB DIRECTFB_LIB_DBG DIRECTFB_H_PATH)
Could NOT find OPENGLES (missing: OPENGLES_LIB OPENGLES_H_PATH)
Could NOT find XERCESC (missing: XERCESC_LIB XERCESC_LIB_DBG XERCESC_H_PATH)
Could NOT find LibXml2 (missing: LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR)
Could NOT find TINYXML (missing: TINYXML_LIB TINYXML_LIB_DBG TINYXML_H_PATH)
Could NOT find RAPIDXML (missing: RAPIDXML_H_PATH)
Could NOT find IL (missing: IL_LIB IL_LIB_DBG IL_H_PATH)
Could NOT find ILU (missing: ILU_LIB ILU_LIB_DBG)
Could NOT find FREEIMAGE (missing: FREEIMAGE_LIB FREEIMAGE_LIB_DBG FREEIMAGE_H_PATH)
Could NOT find CORONA (missing: CORONA_LIB CORONA_LIB_DBG CORONA_H_PATH)
Could NOT find PVRTOOLS (missing: PVRTOOLS_LIB PVRTOOLS_H_PATH)
Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE)
Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS)
Could NOT find Boost
Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
Some or all of the gtk libraries were not found. (missing: GTK2_GTK_LIBRARY GTK2_GTK_INCLUDE_DIR GTK2_GLIB_INCLUDE_DIR GTK2_GLIBCONFIG_INCLUDE_DIR GTK2_GLIB_LIBRARY GTK2_GDK_INCLUDE_DIR GTK2_GDKCONFIG_INCLUDE_DIR GTK2_GDK_LIBRARY)
Configuring done
Is this right? For this attempt I went ahead and continued and hit generate, opened the cegui.sln, and ran in to a few more questions.
It says for CEGUIOgreRenderer to add BOOST_ROOT to additional include directories (ConfigProps->C/C++->AdditionalIncludeDirectories I assume), and to add libraries to additional library directories. Now for me I have Boost_FILESYSTEM_LIBRARY and Boost_REGEX_LIBRARY. Is this what the additional library directories are? Not sure here. Anyway, I added both of those to additional library directories in the linker section. Is this correct? If not what do I do?
Then I built the project on debug and got these errors.
Error 127 error LNK1107: invalid or corrupt file: cannot read at 0x320 C:\Shared\OGRE_SNAPSHOT\OGRE-SDK-1.9.0-vc100-amd64-18.04.2013\bin\Release\OgreMain.dll 1 1 CEGUIOgreRenderer-0
Error 129 error C1083: Cannot open include file: 'boost/thread/tss.hpp': No such file or directory c:\shared\ogre_snapshot\ogre-sdk-1.9.0-vc100-amd64-18.04.2013\include\ogre\threading\OgreThreadHeadersBoost.h 37 1 CEGUISampleFramework-0.8
Error 137 error C1083: Cannot open include file: 'boost/thread/tss.hpp': No such file or directory c:\shared\ogre_snapshot\ogre-sdk-1.9.0-vc100-amd64-18.04.2013\include\ogre\threading\OgreThreadHeadersBoost.h 37 1 CEGUISampleFramework-0.8
Error 31 error C2065: 'CEGUI_NEW' : undeclared identifier C:\Shared\OGRE_SNAPSHOT\cegui-0.8.2\cegui\src\RendererModules\Direct3D10\Renderer.cpp 60 1 CEGUIDirect3D10Renderer-0
Error 32 error C2143: syntax error : missing ';' before 'CEGUI::DefaultResourceProvider' C:\Shared\OGRE_SNAPSHOT\cegui-0.8.2\cegui\src\RendererModules\Direct3D10\Renderer.cpp 60 1 CEGUIDirect3D10Renderer-0
I'm sure I went wrong in multiple spots, hopefully someone can help me out here.
Thanks in advance.
UPDATE: I used the precompiled libraries from transporter on the ogre forums.