# Fedora 15 / Electric / Build Issues / Gazebo

asked 2011-10-25 10:44:16 -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 http://www.cmake.org/pipermail/cmake/2006-March/008633.html 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/libtinyxml.so.0 so try adding it to the linker command line
/usr/lib64/libtinyxml.so.0: 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/libvision_reconfigure.so
/usr/bin/ld: cannot find -lpcl_ros_tf
collect2: ld returned 1 exit status
make[2]: *** [lib/libvision_reconfigure.so] Error 1
make[1]: *** [CMakeFiles/vision_reconfigure.dir/all] Error 2


Where do I add the -ltinyxml flag?

edit retag close delete

Sort by » oldest newest most voted

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

Got a solution / workaround: https://code.ros.org/trac/ros-pkg/ticket/5170

more

Great job! I'll just try it out!  ( 2011-11-01 04:16:39 -0500 )edit

answered 2011-10-26 00:53:37 -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: https://code.ros.org/trac/ros-pkg/ticket/5170

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!

more

It's good to know that there are other suffering souls :) I'll try out your recommendations, and get back. Thanks!  ( 2011-10-26 11: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  ( 2011-10-26 11: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!  ( 2011-10-27 00:22:25 -0500 )edit

answered 2011-10-27 00:54:43 -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)
set(GAZEBO_INCLUDE_DIRS ${GAZEBO_INCLUDE_DIRS} /usr/include)  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.

more

Are you able to succesfully run Gazebo?  ( 2011-10-27 00:59:25 -0500 )edit
Yup, SIGSEGV :/  ( 2011-10-27 01:08:55 -0500 )edit
http://pastebin.com/zuzDimdP I have an additional error message. Is this something similar? http://stackoverflow.com/questions/5219167/stdmap-segfaults-when-using-operator ( 2011-10-27 02:27:58 -0500 )edit
Yes - this looks _very_ similar!  ( 2011-10-27 04:30:51 -0500 )edit

Please start posting anonymously - your entry will be published after you log in or create a new account.