Linking with boost 1.57
Hello,
i am using groovy and ubuntu 12.04.
I linked my node with boost 1.55 at the moment, that works fine. Now I have to update to boost 1.57.
CMakeLists.txt
set(Boost_NO_SYSTEM_PATHS TRUE)
set(BOOST_ROOT /opt/boost/boost_1_57)
include_directories(SYSTEM ${Boost_INCLUDE_DIRS}
find_package(Boost 1.57 REQUIRED COMPONENTS thread filesystem log system)
add_executable(test_node src/test.cpp)
if(TARGET test_node)
target_link_libraries(test_node
${catkin_LIBRARIES}
${Boost_LIBRARIES}
)
The problem is that i get no callback if I send a message, with boost 1.55 it worked well. Does someone have some experience with boost 1.57 and ROS?
Or it is possible to build my application as library with boost 1.57 and use it with ROS?
UPDATE
My second possibility is to split my build process in two CMakelists
CMakelists1.txt (with ROS)
add_subdirectory(test)
add_executable(test_node src/test.cpp)
target_link_libraries(test_node
${catkin_LIBRARIES}
testApplication
)
CMakelists2.txt (inside test directory , without cmake and ROS)
set(Boost_NO_SYSTEM_PATHS TRUE)
set(BOOST_ROOT /opt/boost/boost_1_57)
include_directories(SYSTEM ${Boost_INCLUDE_DIRS}
find_package(Boost 1.57 REQUIRED COMPONENTS thread filesystem log system)
add_library(testApplication STATIC testApplication.cpp)
if(TARGET testApplication)
target_link_libraries(testApplication
${Boost_LIBRARIES}
)
Something like this, is this possible?
What is your favourite linking there ? Static or SHARED?