[Solved] Problem with CMake CEGUI 0.8.2: Can NOT find SILLY

For help with general CEGUI usage:
- Questions about the usage of CEGUI and its features, if not explained in the documentation.
- Problems with the CMAKE configuration or problems occuring during the build process/compilation.
- Errors or unexpected behaviour.

Moderators: CEGUI MVP, CEGUI Team

odedsh
Just popping in
Just popping in
Posts: 12
Joined: Thu Nov 14, 2013 18:17

[Solved] Problem with CMake CEGUI 0.8.2: Can NOT find SILLY

Postby odedsh » Thu Nov 14, 2013 20:32

Hi,

I'm trying to compile CEGUI for the first time. I am using CMake 2.8 and CEGUI 0.8.2. I am using MinGW32 and gcc 4.7.2
I used the dependencies pack for 0.8 and compiled it successfully for release & debug (I believe)

Currently when I am using CMake to generate make files I get the following output:
C:\Cpp\cegui-0.8.2>CMake -G "MinGW Makefiles"
-- Could NOT find MINIZIP (missing: MINIZIP_LIB MINIZIP_LIB_STATIC MINIZIP_H_PATH)
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
-- Could NOT find FRIBIDI (missing: FRIBIDI_FOUND_ALL_LIBS FRIBIDI_FOUND_ALL_LIBS_STATIC FRIBIDI_INCLUDE_DIR)
-- Could NOT find DIRECTXSDK (missing: DIRECTXSDK_LIB_PATH DIRECTXSDK_H_PATH DIRECTXSDK_MAX_D3D)
-- Could NOT find D3DX11EFFECTS (missing: D3DX11EFFECTS_LIB D3DX11EFFECTS_LIB_STATIC D3DX11EFFECTS_H_PATH)
-- 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_STATIC DIRECTFB_H_PATH)
-- Could NOT find OPENGLES (missing: OPENGLES_LIB OPENGLES_H_PATH)
-- Could NOT find XERCESC (missing: XERCESC_LIB XERCESC_LIB_STATIC XERCESC_H_PATH)
-- Could NOT find LibXml2 (missing: LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR)
-- Could NOT find TINYXML (missing: TINYXML_LIB TINYXML_LIB_STATIC TINYXML_H_PATH)
-- Could NOT find RAPIDXML (missing: RAPIDXML_H_PATH)
-- Could NOT find IL (missing: IL_LIB IL_LIB_STATIC IL_H_PATH)
-- Could NOT find ILU (missing: ILU_LIB ILU_LIB_STATIC)
-- Could NOT find FREEIMAGE (missing: FREEIMAGE_LIB FREEIMAGE_LIB_STATIC FREEIMAGE_H_PATH)
-- Could NOT find SILLY (missing: SILLY_LIB_STATIC)
-- Could NOT find CORONA (missing: CORONA_LIB CORONA_LIB_STATIC CORONA_H_PATH)
-- Could NOT find PVRTOOLS (missing: PVRTOOLS_LIB PVRTOOLS_H_PATH)
-- Could NOT find LUA51 (missing: LUA_LIB LUA_LIB_STATIC LUA_H_PATH)
-- Could NOT find TOLUAPP (missing: TOLUAPP_LIB TOLUAPP_LIB_STATIC TOLUAPP_H_PATH)
-- Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS)
-- Boost version: 1.54.0
-- Found the following Boost libraries:
-- python
-- unit_test_framework
-- system
-- 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_GDK_INCLUDE_DIR GTK2_GDKCONFIG_INCLUDE_DIR GTK2_GDK_LI
BRARY GTK2_GLIB_INCLUDE_DIR GTK2_GLIBCONFIG_INCLUDE_DIR GTK2_GLIB_LIBRARY)
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Cpp/cegui-0.8.2



However my relevant Cache Entries are:
//Specifies whether to build the SILLY based ImageCodec module
CEGUI_BUILD_IMAGECODEC_SILLY:BOOL=ON
//preprocessor definitions
SILLY_DEFINITIONS_STATIC:STRING=SILLY_STATIC

//Path to a file.
SILLY_H_PATH:PATH=C:/Cpp/cegui-deps-0.8.x-src/dependencies/include

//Path to a library.
SILLY_LIB:FILEPATH=C:/Cpp/cegui-deps-0.8.x-src/dependencies/lib/dynamic/libSILLY.dll.a

//Path to a library.
SILLY_LIB_DBG:FILEPATH=C:/Cpp/cegui-deps-0.8.x-src/dependencies/lib/dynamic/libSILLY_d.dll.a

//Path to a library.
SILLY_LIB_STATIC:FILEPATH=C:/Cpp/cegui-deps-0.8.x-src/dependencies/lib/static/libSILLY.a

//Path to a library.
SILLY_LIB_STATIC_DBG:FILEPATH=C:/Cpp/cegui-deps-0.8.x-src/dependencies/lib/static/libSILLY_d.a



I checked and double checked that the paths above are correct.

If I try to Make CEGUI despite this then I get the following error:
[ 81%] Building CXX object cegui/src/ImageCodecModules/SILLY/CMakeFiles/CEGUISILLYImageCodec.dir/ImageCodec.cpp.obj
cd /d C:\Cpp\cegui-0.8.2\cegui\src\ImageCodecModules\SILLY && C:\MinGW\bin\g++.exe -DCEGUISILLYIMAGECODEC_EXPORTS -DNOMINMAX -D_CRT_SECURE_NO_WARNINGS -O3 -DNDEBUG @CMakeFiles/CEGUISILLYImageCodec.dir/includes_CXX.rsp -o CMakeFiles\CEGUISILLYImageCodec.dir\ImageCodec.cpp.obj -c C:\Cpp\cegui-0.8.2\cegui\src\ImageCodecModules\SILLY\ImageCodec.cpp
C:\Cpp\cegui-0.8.2\cegui\src\ImageCodecModules\SILLY\ImageCodec.cpp:32:19: fatal error: SILLY.h: No such file or directory compilation terminated.
cegui\src\ImageCodecModules\SILLY\CMakeFiles\CEGUISILLYImageCodec.dir\build.make:57: recipe for target 'cegui/src/ImageCodecModules/SILLY/CMakeFiles/CEGUISILLYImageCodec.dir/ImageCodec.cpp.obj' failed
Mingw32-make[2]: *** [cegui/src/ImageCodecModules/SILLY/CMakeFiles/CEGUISILLYImageCodec.dir/ImageCodec.cpp.obj] Error 1
Mingw32-make[2]: Leaving directory 'C:/Cpp/cegui-0.8.2'
CMakeFiles\Makefile2:481: recipe for target 'cegui/src/ImageCodecModules/SILLY/CMakeFiles/CEGUISILLYImageCodec.dir/all' failed
Mingw32-make[1]: *** [cegui/src/ImageCodecModules/SILLY/CMakeFiles/CEGUISILLYImageCodec.dir/all] Error 2
Mingw32-make[1]: Leaving directory 'C:/Cpp/cegui-0.8.2'
Makefile:125: recipe for target 'all' failed
Mingw32-make: *** [all] Error 2


And sure enough `includes_CXX.rsp` does not contain the include path to SILLY: C:/Cpp/cegui-deps-0.8.x-src/dependencies/include
(link.txt do not contain the relevant -l / -L for SILLY)

I suspect that since CMake complained about failing to find the library it didn't correctly configure the -I / -L settings in the makefile. But I am not sure which variables I should tweak so it would find the SILLY library. Anyone can help?
Last edited by odedsh on Sat Nov 23, 2013 22:00, edited 1 time in total.

odedsh
Just popping in
Just popping in
Posts: 12
Joined: Thu Nov 14, 2013 18:17

Re: Problems with CMake and CEGUI 0.8.2: Could NOT find SILL

Postby odedsh » Thu Nov 14, 2013 20:49

I think the problem is with finding libpng..
In FindSilly.cmake:
cegui_find_libraries(SILLY_LIB_STATIC "libpng;jpeg" static)
cegui_find_libraries(SILLY_LIB_STATIC_DBG "libpng_d;jpeg_d" static)

After these calls SILLY_LIB_STATIC is replaced with `libpng-NOTFOUND`..

odedsh
Just popping in
Just popping in
Posts: 12
Joined: Thu Nov 14, 2013 18:17

Re: Problems with CMake and CEGUI 0.8.2: Could NOT find SILL

Postby odedsh » Thu Nov 14, 2013 21:19

Alright, Figured that all my problems were down to the fact that CMAKE_PREFIX_PATH is configured under the assumption that all the dependencies are compiled to:
<CEGUI_DIR>/dependencies (lib & include etc..)

I have them at:
C:/Cpp/cegui-deps-0.8.x-src/dependencies

Fixed the path in CMake and my problems disappeared. I will check the wiki again cause I didn't see anything about where to put the dependencies so CEGUI Cmake will pick them up quickly.

User avatar
Ident
CEGUI Team
Posts: 1998
Joined: Sat Oct 31, 2009 13:57
Location: Austria

Re: Problems with CMake and CEGUI 0.8.2: Could NOT find SILL

Postby Ident » Mon Nov 18, 2013 18:25

Hi, sorry for the late response..

The info on this can be found here:
http://static.cegui.org.uk/docs/current ... _deps.html
This page describes that the folder has to be called "dependencies" and is supposed to be in the main cegui source directory.

In general it is better to rely on the API docs rather than the wiki. Wiki is for additional things, API is for the core functionality and is also updated by the developers regularly, while the wiki is rather a community thing or for Todos and special applications.
CrazyEddie: "I don't like GUIs"


Return to “Help”

Who is online

Users browsing this forum: No registered users and 21 guests