# visualization_common/ogre links wrong libboost (host version)

Hi all,

right now I'm using a ROS cturtle base installation which i compiled entirely from source for a SLED 11 (Suse Linux Enterprise Desktop) system. I don't want to depend on the system installed libboost library (which is very old) so I installed a up-to-date libboost in a local usr/ directory. So far it works pretty nice, but I discovered that some shared libraries are still linking against the system installed libboost (/usr/lib). I discovered that the root of all evil are the orgre libraries (libOgreMain.so, libOgrePaging.so, libOgreProperty.so, libOgreTerrain.so, libOgreRTShaderSystem.so) which are later linked against other visualization tools and hence inherit dependencies to the wrong libboost version.

I figured that the key to force ogre to use a local installed libboost should be within the global makefile (visualization_common/ogre/Makefile):

 LFLAGS = \$(shell rosboost-cfg --lflags thread) \ -lpthread 

This however seems not to work, although the output of rosboost-cfg --lflags thread looks good. I'm not very familiar with CMake to fully comprehend the "magic" behind the build scripts & macros within the ogre build process. But somehow the lib-search-path within the LDFLAGS above is not considered as primary search path or even not considered at all. This is what I checked out so far:

• setting BOOST_ROOT to my local "usr/lib" folder
• OGRE_DEP_SEARCH_PATH to my local "usr/lib" folder
• Boost_INCLUDE_DIRS to my local "usr/include" folder
• Boost_LIBRARY_DIRS to my local "usr/lib" folder

Software versions

• ROS: cturtle source installation from rosinstall
• Host version of libboost: 1.36
• Local version of libboost: 1.40
• CMake version: 2.8.3

Maybe some of you guys have a clue what is going on there, or even have had the same problem.

Cheers Phil

edit retag close merge delete

Sort by » oldest newest most voted

Ok, my solution was simply to make use of "ccmake" in order to influence the cmake cache, subsitute the wrong libboost paths with the right ones and build again. Not nice but this problem was really driving me nuts in the meantime.

more