[ros-users] pcl temlatization compile issue?

Forside
Vedhæftede filer:
Indlæg som e-mail
+ (text/plain)
+ (text/html)
Slet denne besked
Besvar denne besked
Skribent: Adam Leeper
Dato:  
Til: ros-users
Emne: [ros-users] pcl temlatization compile issue?
Hi all-

I'm having some trouble compiling something with pcl.

I have a function that looks like this:

vector<pcl::PointCloud<pcl::PointXYZ> >
segment_objects(pcl::PointCloud<pcl::PointXYZ> cloud)
{
... stuff ..
}

If I keep it within my main .cpp file everything compiles fine. But then I
made a utilities.h/.cpp files and put segment_objects in there, and now it
complains about multiple definitions of point_cloud::traits. There is a long
list of them, but it only complains about those (point_cloud::traits),
nothing else.

CMakeFiles/bigg_dynamic.dir/src/bigg_dynamic.o:(.rodata+0x106): multiple
definition of `point_cloud::traits::name<pcl::PointXYZRGBA,
point_cloud::fields::x>::value'
CMakeFiles/bigg_dynamic.dir/src/utilities.o:(.rodata+0x6): first defined
here
CMakeFiles/bigg_dynamic.dir/src/bigg_dynamic.o:(.rodata+0x108): multiple
definition of `point_cloud::traits::name<pcl::PointXYZRGBA,
point_cloud::fields::y>::value'
CMakeFiles/bigg_dynamic.dir/src/utilities.o:(.rodata+0x8): first defined
here

I can't see any reason this shouldn't work, unless I am missing something
about the templatization of pcl that might be screwing something up...

There are several other helper functions defined in these files that compile
just fine and it doesn't complain about redfinitions, except these functions
use only opencv.

Any help is appreciated!

--Adam



Adam Leeper
Stanford University

719.358.3804