On 12/03/2012 10:52 AM, Mary Ellen
Foster wrote:
Hello all,
Some students have developed some code using ROS that I would
like to make use of. The obvious, easy solution is to install
Ubuntu on a computer and use it that way, but I've been trying
to see how much of a hassle it would be to set things up on my
Fedora 18 desktop.
- installed python-rosinstall, python-rospkg and
python-rosdep (and ros-release) from the fedorapeople repo
instead of using python-pip
- downloaded http://ros.org/rosinstalls/fuerte-ros-full.rosinstall
and changed the path for actionlib to refer to ros-gbp
instead of wg-debs
- created an appropriate rosdep-fedora.yaml file as
described here (https://code.ros.org/trac/ros/ticket/3929)
- edited CMakeCache.txt after running cmake to set
SETUPTOOLS_ARG_EXTRA to an empty string before running "make
install" (SETUPTOOLS_DEB_LAYOUT seems not to work quite
right)
- created a symlink dist-packages -> site-packages
inside /opt/ros/fuerte/lib/python2.7, again because the deb
layout seemed to be getting in the way
- added "set (PythonLibs_FIND_VERSION 2)" before all
"find_package (PythonLibs)" calls in all CMakeLists.txt
files (in the underlay and the actual OS) so that it finds
Python 2 instead of Python 3
- added "rosbuild_link_boost ($executable system)" to
various CMakeLists.txt files -- with Boost 1.50.0, you have
to explicitly link against the system lib or else you get
undefined references to symbols like
'_ZN5boost6system15system_categoryEv'
[rosbuild] Building package costmap_2d
Failed to invoke /opt/ros/fuerte/bin/rospack
deps-manifests costmap_2d
[rospack] Error: package/stack costmap_2d depends on
non-existent package pcl
I do have pcl-devel-1.6.0-2.fc18.x86_64 installed but it
doesn't seem to help. I tried rebuilding the pcl srpm with the
patch from http://dev.pointclouds.org/issues/699 (it
applied with minimal fuzz), but the rpmbuild pretty much
brought my fairly beefy desktop machine to its knees and I'm
not sure if it will help in any case. Should I persevere with
that?
Any other suggestions for getting this working? As a
fallback, I can just install Ubuntu on our demo laptop, but it
would be nice to have this working.
All the best,
MEF
Hi,
After hacking on this issue for a while, the best solution I have
found is to package the core ros stack (or otherwise have it
available,) and then build PCL with the issue 699 patch and USE_ROS
set to true.
The error you're getting is because PCL doesn't provide any of the
ROS package metadata out of the box, so rospack fails to find PCL.
The patch from issue 699 aimed to fix that, and to make PCL play
nice with the ROS message definitions. PCL is a beast to build
though; there's tons of templates which seem to slow gcc down
considerably.
I'm pretty sure that the 699 patch + your best path forward while
we work on getting ROS packaged up (some of the python tools are
already packaged, and the fuerte packages on my fedorapeople are
almost for submission when I find some spare cycles). I'd be
interested in knowing if you run into any issues, because the 699
patch is how I plan on making PCL work with ROS once the other
packages are in Fedora.
Rich
|
_______________________________________________
robotics mailing list
robotics@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/robotics