ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Fedora 15 / Electric / Build Issues / Gazebo

asked 2011-10-25 05:44:16 -0500

ICodeRaven gravatar image

updated 2011-10-25 18:16:57 -0500

Hi all I just installed an Electric desktop-full as per the instructions on an x86_64 Fedora 15 installation. ROS seems to have installed fine. However, whenever I attempt a rosmake simulator_gazebo, or any other package that requires eigen as a dependency, I get the error

rosdep install ERROR:
failed to install eigen

I have eigen3-devel installed (eigen3-devel-3.0.0-2.fc15.noarch) and don't really have a clue how to go about this, as apparently eigen doesn't have any compiled libraries, only the headers.

Can anyone help? Thanks!

UPDATE: It seems that the warning is thrown only because it can't really find it by the name it's looking for. For example, after a little playing around, I could get vision_opencv working.

UPDATE 2 : Now after quite a few hours, I'm stuck at a cmake stage. Had to install yampl-cpp-devel, tinyxml-devel, vtk-devel, libyaml-devel, rosdep install for gazebo_tools, build assimp, copied the /usr/include/ffmpeg/* to /usr/include (to fix missing avformat.h), hdf5-devel, [added -ltinyxml flag to /gazebo/build/CMakeCache.txt (and in gazebo_tools), added a VTK_DIR:FILEPATH=/usr/lib64/vtk-5.6 to pcl_ros/CMakeCache.txt ... Didnt work], used and changed VTK REQUIRED to VTK5 required in the cmake files. Also changed the path in the URL file to point to lib64/vtk-5.6

This fixed the missing VTK errors, but I'm repeatedly stuck with the tinyXML errors.

/usr/bin/ld: note: 'TiXmlElement::SetAttribute(std::basic_string<char,std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char,    std::char_traits<char>, std::allocator<char> > const&)' is defined in DSO /usr/lib64/ so try adding it to the linker command line
/usr/lib64/ could not read symbols: Invalid operation

I also get a (possibly related because it involves pcl_ros_tf)

  [ 28%] Built target rosbuild_precompile
  Linking CXX shared library lib/
  /usr/bin/ld: cannot find -lpcl_ros_tf
  collect2: ld returned 1 exit status
  make[2]: *** [lib/] Error 1
  make[1]: *** [CMakeFiles/vision_reconfigure.dir/all] Error 2

Where do I add the -ltinyxml flag?

edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted

answered 2011-10-28 00:30:56 -0500

Got a solution / workaround:

edit flag offensive delete link more


Great job! I'll just try it out!
ICodeRaven gravatar image ICodeRaven  ( 2011-10-31 23:16:39 -0500 )edit

answered 2011-10-25 19:53:37 -0500

updated 2011-10-25 19:56:15 -0500

Those are the little things that indeed make the ROS installation quit a bit harder on non-Ubuntu systems. I managed to get it all to compile on my system here (also fc15 x86_64), but should warn you that, for gazebo, I'm stuck with a nasty segfault that seems not so easy to solve:

As for stage, I never tried to build it here, and a make command there now also fails here, even at an earlier stage (this is tags/stage-1.4.0): patch -d build/Stage-3.2.2-Source -p0 < Stage-3.2.2-Source.patch; patch: ** rejecting target file name with ".." component: ../Stage-3.2.2-Source/libstage/CMakeLists.txt make[1]: * [build/Stage-3.2.2-Source/unpacked] Error 2 make[1]: Leaving directory `/home/u0063509/electric/stage' CMake Error at CMakeLists.txt:13 (message): Build of Stage failed So I can't help you for that.

For tinyxml: did you try reinstalling the library? I have tinyxml and tinyxml-devel installed and never had any problems with those.

And the last error, about the pcl_ros_tf linking, looks like pcl_ros_tf is not correctly build, hence the linking error?

Let me know the outcome of your attempt!

edit flag offensive delete link more


It's good to know that there are other suffering souls :) I'll try out your recommendations, and get back. Thanks!
ICodeRaven gravatar image ICodeRaven  ( 2011-10-26 06:10:27 -0500 )edit
Nope, no dice. Tinyxml is present, and is in lib64. Also, I can't seem to find pcl_ros_tf. But perception_pcl builds without errors. :S
ICodeRaven gravatar image ICodeRaven  ( 2011-10-26 06:38:04 -0500 )edit
Figured the deal with pcl_ros_tf. I had to delete the previous CMakeFiles folder. But tinyxml is still giving issues!
ICodeRaven gravatar image ICodeRaven  ( 2011-10-26 19:22:25 -0500 )edit

answered 2011-10-26 19:54:43 -0500

ICodeRaven gravatar image

updated 2011-10-26 20:05:01 -0500

To fix the libtinyxml issue, apparently the build process doesn't look at the lib64 folder. So, I added to CMakeLists.txt

set(GAZEBO_LDFLAGS_OTHERS -L/usr/lib64 -ltinyxml)

to the beginning, and a

  rosbuild_add_link_flags(bin/urdf2model ${GAZEBO_LDFLAGS_OTHERS})

for the urdf2model executable

I also had to something very similar in gazebo_tools, same initial commands, and a

rosbuild_add_link_flags(bin/urdf2model ${GAZEBO_LDFLAGS_OTHERS})

For the pcl_ros_tf, apparently an old failed build was blocking a successful build, and so a delete of the build and the CMakeFiles folder and a subsequent rosmake did the job.

edit flag offensive delete link more


Are you able to succesfully run Gazebo?
Steven Bellens gravatar image Steven Bellens  ( 2011-10-26 19:59:25 -0500 )edit
ICodeRaven gravatar image ICodeRaven  ( 2011-10-26 20:08:55 -0500 )edit
ICodeRaven gravatar image ICodeRaven  ( 2011-10-26 21:27:58 -0500 )edit
Yes - this looks _very_ similar!
Steven Bellens gravatar image Steven Bellens  ( 2011-10-26 23:30:51 -0500 )edit

Question Tools


Asked: 2011-10-25 05:44:16 -0500

Seen: 817 times

Last updated: Oct 28 '11