[Solved] Problem with 0.6.1, linker error CEGUI::Exception

If you found a bug in our library or on our website, please report it in this section. In this forum you can also make concrete suggestions or feature requests.

Moderators: CEGUI MVP, CEGUI Team

andrew
Just popping in
Just popping in
Posts: 2
Joined: Sat Oct 18, 2008 04:00

[Solved] Problem with 0.6.1, linker error CEGUI::Exception

Postby andrew » Sat Oct 18, 2008 14:59

I'm getting link errors with my code, this code worked with CEGUI 0.6.0 and I am not using CEGUI::Exception anywhere in my code.

Code: Select all

andrew@blackbox:~/programming/hardwar/trunk$ cmake .
WARNING: This project requires version 2.6 of CMake.  You are running version 2.4.7.

-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Check size of void*
-- Check size of void* - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- checking for one of the modules 'OIS'
--   found OIS, version 1.2.0
--   libraries : OIS from /usr/lib
--   includes  : /usr/include/OIS
-- checking for one of the modules 'OGRE'
--   found OGRE, version 1.6.0
--   libraries : OgreMain from /usr/lib
--   includes  : /usr/include/OGRE
-- checking for one of the modules 'CEGUI'
--   found CEGUI, version 0.6.1
--   libraries : CEGUIBase from /usr/lib
--   includes  : /usr/include/CEGUI
-- checking for one of the modules 'CEGUI-OGRE'
--   found CEGUI-OGRE, version 1.6.0
--   libraries : CEGUIOgreRenderer;OgreMain;CEGUIBase from /usr/lib
--   includes  : /usr/include/OGRE;/usr/include/CEGUI
-- checking for one of the modules 'sqlite3'
--   found sqlite3, version 3.4.2
--   libraries : sqlite3 from /usr/lib
--   includes  :
-- Looking for gethostbyaddr_r
-- Looking for gethostbyaddr_r - found
-- Looking for gethostbyname_r
-- Looking for gethostbyname_r - found
-- Looking for poll
-- Looking for poll - found
-- Looking for fcntl
-- Looking for fcntl - found
-- Looking for inet_pton
-- Looking for inet_pton - found
-- Looking for inet_ntop
-- Looking for inet_ntop - found
-- Looking for include files _HAS_SOCKET_INCLUDE
-- Looking for include files _HAS_SOCKET_INCLUDE - found
-- Looking for include files _HAS_TYPES_INCLUDE
-- Looking for include files _HAS_TYPES_INCLUDE - found
-- Performing Test _HAS_MSGHDR_FLAGS
-- Performing Test _HAS_MSGHDR_FLAGS - Success
-- Performing Test _HAS_SOCKLEN_T
-- Performing Test _HAS_SOCKLEN_T - Success
-- Enet found
--  libraries : Enet
--  includes : /home/andrew/programming/hardwar/trunk/dependencies/enet/include
-- TinyXML found
--  libraries : TinyXML
--  includes : /home/andrew/programming/hardwar/trunk/dependencies/TinyXML
-- OgreMax found
--  libraries : OgreMax;TinyXML
--  includes : /home/andrew/programming/hardwar/trunk/dependencies/OgreMax
-- Configuring done
-- Generating done
-- Build files have been written to: /home/andrew/programming/hardwar/trunk
andrew@blackbox:~/programming/hardwar/trunk$ make
[ 26%] Built target Enet
[ 43%] Built target OgreMax
[ 56%] Built target TinyXML
Linking CXX executable bin/hardwar
 /usr/lib/gcc/i486-linux-gnu/4.2.3/../../../../lib/libCEGUIOgreRenderer.so: undefined reference to `CEGUI::Exception::Exception(CEGUI::String const&)'
collect2: ld returned 1 exit status
make[2]: *** [bin/hardwar] Error 1
make[1]: *** [CMakeFiles/hardwar.dir/all] Error 2
make: *** [all] Error 2
andrew@blackbox:~/programming/hardwar/trunk$


I am using Ogre::Exception in main.cpp but that's it. My code is available here..

http://bazaar.launchpad.net/~hardwar/ha ... 0rrrlrhe-1

Also I made Debian Ubuntu packages for my code here.. http://forum.freegamedev.net/index.php?t=msg&th=1596

I had someone with a i386 Debian system follow those instructions and he can build fine, but on Ubuntu i386 I can not.

Here is here is his cmake generation..

Code: Select all

-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Boost version: 1.34.1
-- Found the following Boost libraries:
-- checking for one of the modules 'OIS'
--   found OIS, version 1.2.0
--   libraries : OIS from /usr/local/lib
--   includes  : /usr/local/include/OIS;/usr/local/include
-- checking for one of the modules 'OGRE'
--   found OGRE, version 1.6.0
--   libraries : OgreMain from /usr/local/lib
--   includes  : /usr/local/include;/usr/local/include/OGRE
-- checking for one of the modules 'CEGUI'
--   found CEGUI, version 0.6.1
--   libraries : CEGUIBase from /usr/local/lib
--   includes  : /usr/local/include;/usr/local/include/CEGUI
-- checking for one of the modules 'CEGUI-OGRE'
--   found CEGUI-OGRE, version 1.6.0
--   libraries : CEGUIOgreRenderer;OgreMain;CEGUIBase from /usr/local/lib
--   includes  : /usr/local/include/OGRE;/usr/local/include;/usr/local/include/CEGUI
-- checking for one of the modules 'sqlite3'
--   found sqlite3, version 3.5.9
--   libraries : sqlite3 from /usr/lib
--   includes  :
-- Looking for gethostbyaddr_r
-- Looking for gethostbyaddr_r - found
-- Looking for gethostbyname_r
-- Looking for gethostbyname_r - found
-- Looking for poll
-- Looking for poll - found
-- Looking for fcntl
-- Looking for fcntl - found
-- Looking for inet_pton
-- Looking for inet_pton - found
-- Looking for inet_ntop
-- Looking for inet_ntop - found
-- Looking for include files _HAS_SOCKET_INCLUDE
-- Looking for include files _HAS_SOCKET_INCLUDE - found
-- Looking for include files _HAS_TYPES_INCLUDE
-- Looking for include files _HAS_TYPES_INCLUDE - found
-- Performing Test _HAS_MSGHDR_FLAGS
-- Performing Test _HAS_MSGHDR_FLAGS - Success
-- Performing Test _HAS_SOCKLEN_T
-- Performing Test _HAS_SOCKLEN_T - Success
-- Enet found
--  libraries : Enet
--  includes : /home/qubodup/src/hardwar/trunk/dependencies/enet/include
-- TinyXML found
--  libraries : TinyXML
--  includes : /home/qubodup/src/hardwar/trunk/dependencies/TinyXML
-- OgreMax found
--  libraries : OgreMax;TinyXML
--  includes : /home/qubodup/src/hardwar/trunk/dependencies/OgreMax
-- Configuring done
-- Generating done
-- Build files have been written to: /home/qubodup/src/hardwar/trunk


As you can see, exactly the same apart from the install location.

UPDATE: I just had another person try on debian with the same cmake settings as mine and they get the same link error.
Last edited by andrew on Sat Oct 18, 2008 18:11, edited 1 time in total.

andrew
Just popping in
Just popping in
Posts: 2
Joined: Sat Oct 18, 2008 04:00

Postby andrew » Sat Oct 18, 2008 18:10

I figured this out, it's my own fault..

When I made the deb package I forgot that I was including an old version of CEGUI.

If you're getting this error then build ogre again making sure you are building against the version of CEGUI you're using in your program.


Return to “Bug Reports, Suggestions, Feature Requests”

Who is online

Users browsing this forum: No registered users and 14 guests