[ros-users] Compiling ROS with boost >1.41

Félix Robles felrobelv at gmail.com
Sun Jun 17 09:58:18 UTC 2012


Hello everybody.

I have Ubuntu 64 bits 10.04 with kernel 2.6.32-38-generic and gcc (Ubuntu
4.4.3-4ubuntu5.1) 4.4.3. The problem I have is that I need to compile ROS
(Electric or Fuerte) with boost 1.47, but it looks like it only works for
boost 1.41 or lower. Is there any workaround?

Following this tutorial<http://ros.org/wiki/fuerte/Installation/Ubuntu/Source>,
I've successfully compiled ROS Fuerte with boost 1.41. But when I try to
compile ROS Fuerte with boost 1.42 (or higher, I've also tried with boost
1.44 and 1.47 and they give even more errors), and this is the output I get:

*~/ros-underlay/build$ make -j*

[Everything goes ok up to the following point]

[ 29%] Generating Lisp code from actionlib/TestRequestResult.msg
Linking CXX executable ../bin/rospack
[ 29%] Generating Lisp code from actionlib/TestRequestFeedback.msg
[ 29%] [ 29%] Linking CXX executable ../bin/rosstack
Generating Python from MSG rosgraph_msgs/Log
Generating Python from MSG actionlib/TwoIntsActionResult
[ 29%] Generating Lisp code from actionlib/TwoIntsAction.msg
[ 29%] Built target rosgraph_msgs_gencpp
../lib/librospack.so: undefined reference to
`boost::program_options::options_description::options_description(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, unsigned int,
unsigned int)'
collect2: ld returned 1 exit status
make[2]: *** [bin/rospack] Error 1
make[1]: *** [rospack/CMakeFiles/rospackexe.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Scanning dependencies of target std_srvs_gencpp
[ 29%] Generating Python from MSG actionlib/TwoIntsActionFeedback
[ 29%] Generating C++ code from std_srvs/Empty.srv
[ 29%] [ 29%] Generating Lisp code from actionlib/TwoIntsActionGoal.msg
Generating Python from MSG actionlib/TwoIntsGoal
[ 29%] ../lib/librospack.so: undefined reference to
`boost::program_options::options_description::options_description(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, unsigned int,
unsigned int)'
collect2: ld returned 1 exit status
make[2]: *** [bin/rosstack] Error 1
make[1]: *** [rospack/CMakeFiles/rosstackexe.dir/all] Error 2


Before executing make, I execute cmake, with the following result, which
perhaps could be helpful in guessing what's happening:

*~/ros-underlay$ cmake .. -DCMAKE_INSTALL_PREFIX=/opt/ros/fuerte*
CMake Error: The source directory "/home/findeton" does not appear to
contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.
findeton at findeton-laptop:~/ros-underlay$ cd build
findeton at findeton-laptop:~/ros-underlay/build$ cmake ..
-DCMAKE_INSTALL_PREFIX=/opt/ros/fuerte
-- 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
-- +++ catkin
-- Found PythonInterp: /usr/bin/python2.6
-- Looking for include files CMAKE_HAVE_PTHREAD_H
-- Looking for include files CMAKE_HAVE_PTHREAD_H - found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found gtest: gtests will be built.
TODO: implement add_roslaunch_check() in rostest-extras.cmake.
-- BUILD_SHARED_LIBS is on.
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- ~~         traversing stacks/projects in dependency order         ~~
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- +++ genmsg
-- +++ genpy
-- +++ gencpp
-- +++ genlisp
-- +++ rospack
-- Rospack building shared objects.
-- Boost version: 1.42.0
-- Found the following Boost libraries:
--   system
--   filesystem
--   program_options
-- +++ std_msgs
-- std_msgs: 32 messages
-- +++ ros
-- Boost version: 1.42.0
-- Found the following Boost libraries:
--   thread
--    Making toplevel forward script for bash script rosrun
-- +++ roscpp_core
-- Looking for execinfo.h
-- Looking for execinfo.h - found
-- Performing Test HAVE_CXXABI_H
-- Performing Test HAVE_CXXABI_H - Failed
-- Looking for backtrace
-- Looking for backtrace - found
-- Boost version: 1.42.0
-- Found the following Boost libraries:
--   date_time
--   thread
-- +++ ros_comm
-- rosgraph_msgs: 2 messages
-- std_srvs: 0 messages
TODO: consider moving xmlrpcpp's headers into a subdirectory
-- Boost version: 1.42.0
-- Found the following Boost libraries:
--   regex
--   thread
-- Boost version: 1.42.0
-- Found the following Boost libraries:
--   signals
--   filesystem
--   system
-- Looking for include files HAVE_IFADDRS_H
-- Looking for include files HAVE_IFADDRS_H - found
-- Looking for trunc
-- Looking for trunc - not found
-- roscpp: 1 messages
-- topic_tools: 0 messages
CMake Warning at build/cmake/rosunit/rosunit-extras.cmake:17 (message):
  add_pyunit() is deprecated.  For Python tests, use add_nostests() instead.
Call Stack (most recent call first):
  ros_comm/tools/topic_tools/CMakeLists.txt:70 (add_pyunit)


-- Found BZip2: /usr/lib/libbz2.so
-- Looking for BZ2_bzCompressInit in /usr/lib/libbz2.so
-- Looking for BZ2_bzCompressInit in /usr/lib/libbz2.so - found
CMake Warning at build/cmake/rosunit/rosunit-extras.cmake:17 (message):
  add_pyunit() is deprecated.  For Python tests, use add_nostests() instead.
Call Stack (most recent call first):
  ros_comm/tools/rosbag/CMakeLists.txt:62 (add_pyunit)


-- test_ros: 15 messages
-- test_roslib_comm: 15 messages
-- test_rospy: 12 messages
-- test_rosservice: 0 messages
-- test_roscpp: 4 messages
-- test_roscpp_serialization: 18 messages
-- test_roscpp_serialization_perf: 3 messages
-- perf_roscpp: 2 messages
-- test_crosspackage: 2 messages
-- test_rosbag: 12 messages
CMake Warning at build/cmake/rosunit/rosunit-extras.cmake:17 (message):
  add_pyunit() is deprecated.  For Python tests, use add_nostests() instead.
Call Stack (most recent call first):
  ros_comm/test/test_rosbag/CMakeLists.txt:52 (add_pyunit)


-- +++ rx
-- Found wxWidgets: TRUE
-- Found PythonLibs: /usr/lib/libpython2.6.so
-- +++ common_msgs
-- geometry_msgs: 23 messages
-- sensor_msgs: 18 messages
-- nav_msgs: 5 messages
-- actionlib_msgs: 3 messages
-- visualization_msgs: 10 messages
-- stereo_msgs: 1 messages
-- diagnostic_msgs: 3 messages
-- trajectory_msgs: 2 messages
-- +++ ros_tutorials
-- rospy_tutorials: 2 messages
-- roscpp_tutorials: 0 messages
-- Looking for Q_WS_X11
-- Looking for Q_WS_X11 - found
-- Looking for Q_WS_WIN
-- Looking for Q_WS_WIN - not found.
-- Looking for Q_WS_QWS
-- Looking for Q_WS_QWS - not found.
-- Looking for Q_WS_MAC
-- Looking for Q_WS_MAC - not found.
-- Found Qt-Version 4.6.2 (using /usr/bin/qmake)
-- Looking for _POSIX_TIMERS
-- Looking for _POSIX_TIMERS - found
-- turtlesim: 3 messages
-- +++ actionlib
-- Generating .msg files for action actionlib/Test
/home/findeton/ros-underlay/actionlib/action/Test.action
Generating for action Test
-- Generating .msg files for action actionlib/TestRequest
/home/findeton/ros-underlay/actionlib/action/TestRequest.action
Generating for action TestRequest
-- Generating .msg files for action actionlib/TwoInts
/home/findeton/ros-underlay/actionlib/action/TwoInts.action
Generating for action TwoInts
-- actionlib: 21 messages
-- Configuring done
-- Generating done
-- Build files have been written to: /home/findeton/ros-underlay/build
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osuosl.org/pipermail/ros-users/attachments/20120617/f21060b0/attachment-0003.html>


More information about the ros-users mailing list