Hi,
I'm trying to install the ROS/Orocos toolchain on a machine running Fedora 15
but I cannot succeed in doing so.
1. Following instructions on
http://www.ros.org/wiki/orocos_toolchain_ros As I
cannot use the prebuilt deb I go for the manual checkout/build track which
works fine until I arrive at the step saying
rosmake orocos_toolchain_ros
which fails since I don't have any rosmake command. No candidate can be found
in the previously checked out code.
I'm either a sloppy reader (quite possible), or the instructions miss some
prerequisites?
2. OK, I don't have rosmake so maybe I can install ROS and get it then?
I find my way to
http://www.ros.org/wiki/diamondback/Installation/Fedora and
start following instructions on that page. During rosinstall ~/ros .... the
build crashes due to a link error:
Linking CXX executable ../bin/rosplay
/usr/bin/ld: CMakeFiles/rosplay.dir/src/rosplay/rosplay.o: undefined
reference to symbol 'boost::filesystem3::path::extension() const'
/usr/bin/ld: note: 'boost::filesystem3::path::extension() const' is defined in
DSO /usr/lib/libboost_filesystem-mt.so.1.46.0 so try adding it to the linker
command line
/usr/lib/libboost_filesystem-mt.so.1.46.0: could not read symbols: Invalid
operation
collect2: ld returned 1 exit status
see attached ros_build_fedora15.log for some more output.
3. I know, Fedora 15 is still in beta. Let's try some older, stable, version
instead. Let's try to install on Fedora 13. First, try to build ROS according
to bullet 2 above so that we get the rosmake command needed in bullet 1.
On fedora 13 rosinstall do build without errors, so we can then follow
instructions according to bullet 1 above. Everything works fine until the
rosmake step:
$ rosmake orocos_toolchain_ros
[ rosmake ] Packages requested are: ['orocos_toolchain_ros']
[ rosmake ] Logging to
directory/home/andersn/.ros/rosmake/rosmake_output-20110511-125311
[ rosmake ] Expanded args ['orocos_toolchain_ros'] to:
[]
[ rosmake ] WARNING: The following args could not be parsed as stacks or
packages: ['orocos_toolchain_ros']
[ rosmake ] ERROR: No arguments could be parsed into valid package or stack
names.
And there I'm stuck.
regards,
Anders Nilsson
--
Anders Nilsson, Ph.D. <
andersn@control.lth.se>
Dep. of Automatic Control, Lund University
Phone: +46 (0)46 222 87 94, Fax: +46 (0)46 13 81 18
Mob: +46 (0)703 22 57 67
[ rosmake ] rosdep successfully installed all system dependencies
[ rosmake ] Starting >>> tools/rospack
[ rosmake ] Finished <<< tools/rospack
[rosmake-0] Starting >>> roslib [ make ]
[rosmake-1] Starting >>> rosboost_cfg [ make ]
[rosmake-1] Finished <<< rosboost_cfg No Makefile in package rosboost_cfg
[rosmake-2] Starting >>> rosbash [ make ]
[rosmake-2] Finished <<< rosbash No Makefile in package rosbash
[rosmake-3] Starting >>> rosemacs [ make ]
[rosmake-3] Finished <<< rosemacs No Makefile in package rosemacs
[rosmake-1] Starting >>> mk [ make ]
[rosmake-1] Finished <<< mk No Makefile in package mk
[rosmake-2] Starting >>> rosbuild [ make ]
[rosmake-2] Finished <<< rosbuild No Makefile in package rosbuild
[rosmake-3] Starting >>> roslang [ make ]
[rosmake-3] Finished <<< roslang No Makefile in package roslang
[rosmake-1] Starting >>> cpp_common [ make ]
[rosmake-2] Starting >>> xmlrpcpp [ make ]
[rosmake-3] Starting >>> rosgraph_msgs [ make ]
[rosmake-1] Finished <<< cpp_common [PASS] [ 0.51 seconds ]
[rosmake-1] Starting >>> roscpp_traits [ make ]
[rosmake-2] Finished <<< xmlrpcpp [PASS] [ 0.56 seconds ]
[rosmake-2] Starting >>> rostime [ make ]
[rosmake-0] Finished <<< roslib [PASS] [ 0.94 seconds ]
[rosmake-0] Starting >>> rosdep [ make ]
[rosmake-0] Finished <<< rosdep No Makefile in package rosdep
[rosmake-0] Starting >>> rosunit [ make ]
[rosmake-3] Finished <<< rosgraph_msgs [PASS] [ 0.90 seconds ]
[rosmake-3] Starting >>> roscreate [ make ]
[rosmake-1] Finished <<< roscpp_traits [PASS] [ 0.50 seconds ]
[rosmake-1] Starting >>> rosclean [ make ]
[rosmake-0] Finished <<< rosunit [PASS] [ 0.48 seconds ]
[rosmake-0] Starting >>> rosmake [ make ]
[rosmake-3] Finished <<< roscreate [PASS] [ 0.50 seconds ]
[rosmake-3] Starting >>> test_rospack [ make ]
[rosmake-1] Finished <<< rosclean [PASS] [ 0.49 seconds ]
[rosmake-1] Starting >>> test_roscreate [ make ]
[rosmake-2] Finished <<< rostime [PASS] [ 1.01 seconds ]
[rosmake-2] Starting >>> test_rosdep [ make ]
[rosmake-0] Finished <<< rosmake [PASS] [ 0.49 seconds ]
[rosmake-0] Starting >>> test_rosmake [ make ]
[rosmake-1] Finished <<< test_roscreate [PASS] [ 0.48 seconds ]
[rosmake-1] Starting >>> test_roslib [ make ]
[rosmake-2] Finished <<< test_rosdep [PASS] [ 0.53 seconds ]
[rosmake-2] Starting >>> roscpp_serialization [ make ]
[rosmake-0] Finished <<< test_rosmake [PASS] [ 0.50 seconds ]
[rosmake-0] Starting >>> rosconsole [ make ]
[rosmake-3] Finished <<< test_rospack [PASS] [ 0.94 seconds ]
[rosmake-3] Starting >>> std_msgs [ make ]
[rosmake-2] Finished <<< roscpp_serialization [PASS] [ 0.56 seconds ]
[rosmake-2] Starting >>> rosgraph [ make ]
[rosmake-1] Finished <<< test_roslib [PASS] [ 0.99 seconds ]
[rosmake-1] Starting >>> rosmaster [ make ]
[rosmake-2] Finished <<< rosgraph [PASS] [ 0.53 seconds ]
[rosmake-2] Starting >>> rosparam [ make ]
[rosmake-0] Finished <<< rosconsole [PASS] [ 1.07 seconds ]
[rosmake-0] Starting >>> rosnode [ make ]
[rosmake-1] Finished <<< rosmaster [PASS] [ 0.64 seconds ]
[rosmake-1] Starting >>> std_srvs [ make ]
[rosmake-2] Finished <<< rosparam [PASS] [ 0.51 seconds ]
[rosmake-2] Starting >>> test_crosspackage [ make ]
[rosmake-0] Finished <<< rosnode [PASS] [ 0.60 seconds ]
[rosmake-0] Starting >>> test_rostime [ make ]
[rosmake-1] Finished <<< std_srvs [PASS] [ 0.83 seconds ]
[rosmake-1] Starting >>> roslisp [ make ]
[rosmake-0] Finished <<< test_rostime [PASS] [ 0.59 seconds ]
[rosmake-2] Finished <<< test_crosspackage [PASS] [ 0.87 seconds ]
[rosmake-1] Finished <<< roslisp [PASS] [ 0.45 seconds ]
[rosmake-3] Finished <<< std_msgs [PASS] [ 5.15 seconds ]
[rosmake-3] Starting >>> roscpp [ make ]
[rosmake-0] Starting >>> rospy [ make ]
[rosmake-2] Starting >>> test_roslib_comm [ make ]
[rosmake-0] Finished <<< rospy [PASS] [ 1.28 seconds ]
[rosmake-3] Finished <<< roscpp [PASS] [ 3.02 seconds ]
[rosmake-3] Starting >>> rosout [ make ]
[rosmake-1] Starting >>> test_roscpp_serialization_perf [ make ]
[rosmake-0] Starting >>> test_roscpp_serialization [ make ]
[rosmake-3] Finished <<< rosout [PASS] [ 0.99 seconds ]
[rosmake-3] Starting >>> roslaunch [ make ]
[rosmake-3] Finished <<< roslaunch No Makefile in package roslaunch
[rosmake-3] Starting >>> rostest [ make ]
[rosmake-2] Finished <<< test_roslib_comm [PASS] [ 4.08 seconds ]
[rosmake-2] Starting >>> perf_roscpp [ make ]
[rosmake-1] Finished <<< test_roscpp_serialization_perf [PASS] [ 1.69 seconds ]
[rosmake-3] Finished <<< rostest [PASS] [ 0.82 seconds ]
[rosmake-3] Starting >>> topic_tools [ make ]
[rosmake-1] Starting >>> test_rosgraph [ make ]
[rosmake-1] Finished <<< test_rosgraph [PASS] [ 0.71 seconds ]
[rosmake-1] Starting >>> test_ros [ make ]
[rosmake-2] Finished <<< perf_roscpp [PASS] [ 1.94 seconds ]
[rosmake-2] Starting >>> test_rosparam [ make ]
[rosmake-2] Finished <<< test_rosparam [PASS] [ 0.81 seconds ]
[rosmake-2] Starting >>> test_roslaunch [ make ]
[rosmake-3] Finished <<< topic_tools [PASS] [ 2.16 seconds ]
[rosmake-3] Starting >>> rosbag [ make ]
[rosmake-2] Finished <<< test_roslaunch [PASS] [ 0.84 seconds ]
[rosmake-2] Starting >>> message_filters [ make ]
[rosmake-0] Finished <<< test_roscpp_serialization [PASS] [ 4.67 seconds ]
[rosmake-1] Finished <<< test_ros [PASS] [ 2.54 seconds ]
[rosmake-1] Starting >>> test_rostest [ make ]
[rosmake-0] Starting >>> test_rosmaster [ make ]
[rosmake-3] Finished <<< rosbag [PASS] [ 1.22 seconds ]
[rosmake-3] Starting >>> rosrecord [ make ]
[rosmake-1] Finished <<< test_rostest [PASS] [ 0.53 seconds ]
[rosmake-1] Starting >>> rosmsg [ make ]
[rosmake-1] Finished <<< rosmsg No Makefile in package rosmsg
[rosmake-1] Starting >>> rostopic [ make ]
[rosmake-0] Finished <<< test_rosmaster [PASS] [ 0.57 seconds ]
[rosmake-0] Starting >>> rosbagmigration [ make ]
[rosmake-0] Finished <<< rosbagmigration No Makefile in package rosbagmigration
[rosmake-0] Starting >>> test_rosbag [ make ]
[rosmake-2] Finished <<< message_filters [PASS] [ 1.31 seconds ]
[rosmake-2] Starting >>> test_roscpp [ make ]
[rosmake-1] Finished <<< rostopic [PASS] [ 0.55 seconds ]
[rosmake-1] Starting >>> rosservice [ make ]
[rosmake-0] Finished <<< test_rosbag [PASS] [ 0.60 seconds ]
[rosmake-0] Starting >>> test_rostopic [ make ]
[ rosmake ] All 34 linesosrecord: 1.1 sec ] [ te... [ 4 Active 56/68 Complete ]
{-------------------------------------------------------------------------------
mkdir -p bin
cd build && cmake -Wdev -DCMAKE_TOOLCHAIN_FILE=`rospack find rosbuild`/rostoolchain.cmake ..
[rosbuild] Building package rosrecord
[rosbuild] Including /local/home/andersn/work/ros/ros_comm/clients/rospy/cmake/rospy.cmake
[rosbuild] Including /local/home/andersn/work/ros/ros_comm/clients/roslisp/cmake/roslisp.cmake
[rosbuild] Including /local/home/andersn/work/ros/ros_comm/clients/cpp/roscpp/cmake/roscpp.cmake
-- Configuring done
-- Generating done
CMake Warning: The variable, 'CMAKE_TOOLCHAIN_FILE', specified manually, was not used during the generation.
-- Build files have been written to: /local/home/andersn/work/ros/ros_comm/tools/rosrecord/build
cd build && make -l4
make[1]: Entering directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
make[2]: Entering directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
make[3]: Entering directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
make[3]: Leaving directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
[ 0%] Built target rospack_genmsg_libexe
make[3]: Entering directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
make[3]: Leaving directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
[ 0%] Built target rosbuild_precompile
make[3]: Entering directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
make[3]: Leaving directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
make[3]: Entering directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
Linking CXX executable ../bin/rosplay
/usr/bin/ld: CMakeFiles/rosplay.dir/src/rosplay/rosplay.o: undefined reference to symbol 'boost::filesystem3::path::extension() const'
/usr/bin/ld: note: 'boost::filesystem3::path::extension() const' is defined in DSO /usr/lib/libboost_filesystem-mt.so.1.46.0 so try adding it to the linker command line
/usr/lib/libboost_filesystem-mt.so.1.46.0: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[3]: *** [../bin/rosplay] Error 1
make[3]: Leaving directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
make[2]: *** [CMakeFiles/rosplay.dir/all] Error 2
make[2]: Leaving directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/export/work/andersn/ros/ros_comm/tools/rosrecord/build'
-------------------------------------------------------------------------------}
[ rosmake ] Output from build of package rosrecord written to:
[ rosmake ] /local/home/andersn/.ros/rosmake/rosmake_output-20110511-112307/rosrecord/build_output.log
[rosmake-3] Finished <<< rosrecord [FAIL] [ 1.14 seconds ]
[ rosmake ] Halting due to failure in package rosrecord.
[ rosmake ] Waiting for other threads to complete.
[rosmake-1] Finished <<< rosservice [PASS] [ 0.59 seconds ]
[rosmake-0] Finished <<< test_rostopic [PASS] [ 1.26 seconds ]
[rosmake-2] Finished <<< test_roscpp [PASS] [ 2.02 seconds ]
[ rosmake ] Results:
[ rosmake ] Built 60 packages with 1 failures.
[ rosmake ] Summary output to directory
[ rosmake ] /local/home/andersn/.ros/rosmake/rosmake_output-20110511-112307
Traceback (most recent call last):
File "/usr/bin/rosinstall", line 5, in <module>
pkg_resources.run_script('rosinstall==0.5.16', 'rosinstall')
File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 467, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 1200, in run_script
execfile(script_filename, namespace, namespace)
File "/usr/lib/python2.7/site-packages/rosinstall-0.5.16-py2.7.egg/EGG-INFO/scripts/rosinstall", line 556, in <module>
sys.exit(not rosinstall_main(sys.argv))
File "/usr/lib/python2.7/site-packages/rosinstall-0.5.16-py2.7.egg/EGG-INFO/scripts/rosinstall", line 547, in rosinstall_main
subprocess.check_call("source %s && rosmake ros%s --rosdep-install%s" % (os.path.join(options.path, 'setup.sh'), ros_comm_insert, rosdep_yes_insert), shell=True, executable='/bin/bash')
File "/usr/lib/python2.7/subprocess.py", line 504, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command 'source /local/home/andersn/work/ros/setup.sh && rosmake ros ros_comm --rosdep-install' returned non-zero exit status 1