MajorLunaC
12-05-2014 23:43:00
Hi,
I've tried to compile MyGUI revision 5298 and v3.2.0 on Linux Slackware 14.1, but I keep getting the same error:
my-gui-code-r5298/Common/Base/BaseDemoManager.h:10:25: fatal error: BaseManager.h: No such file or directory
#include "BaseManager.h"
^
compilation terminated.
make[2]: *** [Demos/Demo_Controllers/CMakeFiles/Demo_Controllers.dir/DemoKeeper.cpp.o] Error 1
I'm not all that sure what's going wrong (fail to copy from Ogre or OpenGL?).
Also, I'm not too sure about the compiler flags I should be using. I'm aiming to compile it for VDrift which requires OGRE, but I also use OpenGL. So far, I've tried the following with no configure complaints except about the lib directory:
cmake -DCMAKE_INSTALL_PREFIX=/usr -DLIB_PREFIX=64 -DMYGUI_RENDERSYSTEM=ogre ..
cmake -DCMAKE_INSTALL_PREFIX=/usr -DLIB_INSTALL_DIR=/usr/lib64 -DMYGUI_RENDERSYSTEM=OpenGL ..
cmake -DCMAKE_INSTALL_PREFIX=/usr -DOGRE_LIB_DIRECTORY=/usr/lib64 -DMYGUI_RENDERSYSTEM=ogre,OpenGL ..
Does it truly accept both with -DMYGUI_RENDERSYSTEM=ogre,OpenGL or should it be another way? And what's the proper way to indicate the library directory (they keep changing it)?
Any help is much appreciated!
Altren
13-05-2014 09:46:31
Render system should be just -DMYGUI_RENDERSYSTEM=3 for Ogre.
MajorLunaC
13-05-2014 19:25:40
Well, it did work better using -DMYGUI_RENDERSYSTEM=3 , but I get 2 more errors:
[ 34%] Building CXX object Demos/Demo_Colour/CMakeFiles/Demo_Colour.dir/DemoKeeper.cpp.o
[ 34%] Building CXX object Demos/Demo_Controllers/CMakeFiles/Demo_Controllers.dir/State.cpp.o
[ 34%] Building CXX object Demos/Demo_Gui/CMakeFiles/Demo_Gui.dir/ColourWindowCellView.cpp.o
Linking CXX executable ../../bin/Demo_Controllers
Linking CXX executable ../../bin/Demo_Console
/usr/lib64/gcc/x86_64-slackware-linux/4.8.2/../../../../x86_64-slackware-linux/bin/ld: CMakeFiles/Demo_Controllers.dir/DemoKeeper.cpp.o: undefined reference to symbol '_ZN5boost6system15system_categoryEv'
/usr/lib64/gcc/x86_64-slackware-linux/4.8.2/../../../../x86_64-slackware-linux/bin/ld: note: '_ZN5boost6system15system_categoryEv' is defined in DSO /usr/lib64/libboost_system.so.1.54.0 so try adding it to the linker command line
/usr/lib64/libboost_system.so.1.54.0: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make[2]: *** [bin/Demo_Controllers] Error 1
make[1]: *** [Demos/Demo_Controllers/CMakeFiles/Demo_Controllers.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 35%] Building CXX object Demos/Demo_Gui/CMakeFiles/Demo_Gui.dir/DemoKeeper.cpp.o
/usr/lib64/gcc/x86_64-slackware-linux/4.8.2/../../../../x86_64-slackware-linux/bin/ld: CMakeFiles/Demo_Console.dir/DemoKeeper.cpp.o: undefined reference to symbol '_ZN5boost6system15system_categoryEv'
/usr/lib64/gcc/x86_64-slackware-linux/4.8.2/../../../../x86_64-slackware-linux/bin/ld: note: '_ZN5boost6system15system_categoryEv' is defined in DSO /usr/lib64/libboost_system.so.1.54.0 so try adding it to the linker command line
/usr/lib64/libboost_system.so.1.54.0: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make[2]: *** [bin/Demo_Console] Error 1
make[1]: *** [Demos/Demo_Console/CMakeFiles/Demo_Console.dir/all] Error 2
[ 35%] Building CXX object Demos/Demo_Gui/CMakeFiles/Demo_Gui.dir/EditorWindow.cpp.o
[ 35%] Building CXX object Demos/Demo_Colour/CMakeFiles/Demo_Colour.dir/EditPanel.cpp.o
[ 35%] Building CXX object Demos/Demo_Gui/CMakeFiles/Demo_Gui.dir/InformationWindow.cpp.o
[ 36%] Building CXX object Demos/Demo_Gui/CMakeFiles/Demo_Gui.dir/MainPanel.cpp.o
Linking CXX executable ../../bin/Demo_Colour
/usr/lib64/gcc/x86_64-slackware-linux/4.8.2/../../../../x86_64-slackware-linux/bin/ld: CMakeFiles/Demo_Colour.dir/DemoKeeper.cpp.o: undefined reference to symbol '_ZN5boost6system15system_categoryEv'
/usr/lib64/gcc/x86_64-slackware-linux/4.8.2/../../../../x86_64-slackware-linux/bin/ld: note: '_ZN5boost6system15system_categoryEv' is defined in DSO /usr/lib64/libboost_system.so.1.54.0 so try adding it to the linker command line
/usr/lib64/libboost_system.so.1.54.0: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make[2]: *** [bin/Demo_Colour] Error 1
make[1]: *** [Demos/Demo_Colour/CMakeFiles/Demo_Colour.dir/all] Error 2
Linking CXX executable ../../bin/Demo_Gui
/usr/lib64/gcc/x86_64-slackware-linux/4.8.2/../../../../x86_64-slackware-linux/bin/ld: CMakeFiles/Demo_Gui.dir/DemoKeeper.cpp.o: undefined reference to symbol '_ZN5boost6system15system_categoryEv'
/usr/lib64/gcc/x86_64-slackware-linux/4.8.2/../../../../x86_64-slackware-linux/bin/ld: note: '_ZN5boost6system15system_categoryEv' is defined in DSO /usr/lib64/libboost_system.so.1.54.0 so try adding it to the linker command line
/usr/lib64/libboost_system.so.1.54.0: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make[2]: *** [bin/Demo_Gui] Error 1
make[1]: *** [Demos/Demo_Gui/CMakeFiles/Demo_Gui.dir/all] Error 2
make: *** [all] Error 2
bash-4.2$
So I have to add a linker command line option to the right libboost library? My concern is that I'm using 64-bit Linux with 32-bit compatibility libraries (multilib), which is why I'm concerned about it not allowing me to specify any of the following options (32-bit compatibility libraries have often confused build systems on my system setup

):
-DLIBRARY_OUTPUT_PATH=/usr/lib64
-DLIB_SUFFIX=64
-DLIB_INSTALL_DIR=/usr/lib64
-DLIBRARY_OUTPUT_PATH=/usr/lib64
MajorLunaC
15-05-2014 19:10:53