Ask Your Question
2

How to use current experimental pcl together with ROS Fuerte?

asked 2012-06-19 10:03:25 -0500

ph4nt0m gravatar image

Hello,

what is the easiest way to use the current experimental version of the PCL together with ROS Fuerte (which includes PCL 1.5 by default)? There are some features I would like to use which aren't available in version 1.5.

I found this directory but I don't know what these files are for, since there is no official PCL 1.5.2.

Thanks in advance!

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
1

answered 2012-06-19 17:44:21 -0500

prince gravatar image

updated 2012-06-19 17:46:28 -0500

Fuerte uses pcl 1.5 as default. This link in mailing list could be of help: http://code.ros.org/lurker/message/20120618.220556.be95ed89.en.html

Your question is answered by Bhaskara. I am reproducing it here

We've been using pcl trunk with fuerte: 
https://bitbucket.org/bhaskara/perception_pcl_fuerte_unstable 

It puts the pcl trunk code into a 'pcl16' namespace, so that it can 
coexist with fuerte's pcl 1.5. Using it basically involves replacing 
the pcl and pcl_ros namespaces with pcl16 and pcl16_ros respectively. 
- Bhaskara
edit flag offensive delete link more

Comments

Thank you! How does this work? I cloned the git repository, but it doesn't contain the PCL trunk code, so I assume I have to merge them somehow. But how can this package change the c++ namespace to "pcl16" if it does not even contain the (modified) pcl header files?

ph4nt0m gravatar image ph4nt0m  ( 2012-06-20 00:24:51 -0500 )edit

Code is present in repo. I just checked. Can you try again?

prince gravatar image prince  ( 2012-06-20 01:23:47 -0500 )edit

I used "hg clone https://bitbucket.org/bhaskara/perception_pcl_fuerte_unstable", but I doesn't actually contain the pcl header and source files, so I think I have to get these from http://svn.pointclouds.org/pcl/trunk and merge them with perception_pcl_fuerte_unstable in some way!?

ph4nt0m gravatar image ph4nt0m  ( 2012-06-20 01:51:38 -0500 )edit
1

No, you don't have to do that. Just clone this repo somewhere in your ROS_PACKAGE_PATH, then do rosmake pcl16_ros. pcl will be checked out during the build process (see pcl16/Makefile).

bhaskara gravatar image bhaskara  ( 2012-06-20 06:28:43 -0500 )edit

I did exactly what you said, but unfortunately when it comes to executing pcl16/Makefile, I get "CMake Error: The source directory "~/workspace/perception_pcl_fuerte_unstable/pcl16/build/pcl_trunk" does not appear to contain CMakeLists.txt". Apparently, the pcl trunk is not checked out at all. :(

ph4nt0m gravatar image ph4nt0m  ( 2012-06-20 07:36:52 -0500 )edit

You're right — there was an error in the makefile that caused it to not work on a fresh install. I've pushed a fix; can you try it now?

bhaskara gravatar image bhaskara  ( 2012-06-20 10:46:43 -0500 )edit

Thanks! The build dir in pcl16 had to be deleted in order for the respective makefile target to be executed. Thank you for fixing this :) Just one further question: What would be the best way to upgrade to a new trunk? Just change the revision in the Makefile and recompile or to do a fresh install?

ph4nt0m gravatar image ph4nt0m  ( 2012-06-20 11:21:14 -0500 )edit

I don't believe changing the revision will trigger a new build. You'll have to do an rm -rf build in the pcl16 directory as well. It would be nice to be able to svn update pcl and just remake the changed bits, but the problem is that we're patching pretty much all the files after checking them out.

bhaskara gravatar image bhaskara  ( 2012-06-20 11:42:32 -0500 )edit

Your Answer

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

Add Answer

Question Tools

Stats

Asked: 2012-06-19 10:03:25 -0500

Seen: 1,280 times

Last updated: Jun 19 '12