[ros-users] Problem linking latest pcl

Jordi Pages jordi.pages at pal-robotics.com
Thu Jun 10 10:33:53 UTC 2010


In fact there was a mistake in the tutorial. There is actually a missing
dependency:

target_link_libraries (tutorial_filter_voxel_grid pcl_io *pcl_filters*)

Regards


On Thu, Jun 10, 2010 at 9:34 AM, Jordi Pages
<jordi.pages at pal-robotics.com>wrote:

> Hi,
>
> I have some trouble trying to compile the latest svn version of PCL.
>
> I installed ROS latest from SVN in Ubuntu and then I was following the
> tutorial Downsampling a PointCloud using a VoxelGrid filter.<http://www.ros.org/wiki/pcl/Tutorials/Downsampling%20a%20PointCloud%20using%20a%20VoxelGrid%20filter>After adding the required lines in the pcl/CMakeLists.txt file in order to
> compile the example src/examples/filter_voxel_grid.cpp and launching make I
> obtained the following linking error:
>
> Linking CXX executable ../bin/tutorial_filter_voxel_grid
> CMakeFiles/tutorial_filter_voxel_grid.dir/src/examples/filter_voxel_grid.o:
> In function `Filter':
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/filter.h:401:
> undefined reference to `vtable for
> pcl::Filter<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/filter.h:401:
> undefined reference to `vtable for
> pcl::Filter<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> CMakeFiles/tutorial_filter_voxel_grid.dir/src/examples/filter_voxel_grid.o:
> In function `VoxelGrid':
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/voxel_grid.h:579:
> undefined reference to `vtable for
> pcl::VoxelGrid<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/voxel_grid.h:579:
> undefined reference to `vtable for
> pcl::VoxelGrid<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> CMakeFiles/tutorial_filter_voxel_grid.dir/src/examples/filter_voxel_grid.o:
> In function `main':
> /home/jordi/ros/stacks/point_cloud_perception/pcl/src/examples/filter_voxel_grid.cpp:65:
> undefined reference to
> `pcl::PCLBase<sensor_msgs::PointCloud2_<std::allocator<void> >
> >::setInputCloud(boost::shared_ptr<sensor_msgs::PointCloud2_<std::allocator<void>
> > const> const&)'
> /home/jordi/ros/stacks/point_cloud_perception/pcl/src/examples/filter_voxel_grid.cpp:67:
> undefined reference to
> `pcl::Filter<sensor_msgs::PointCloud2_<std::allocator<void> >
> >::filter(sensor_msgs::PointCloud2_<std::allocator<void> >&)'
> CMakeFiles/tutorial_filter_voxel_grid.dir/src/examples/filter_voxel_grid.o:
> In function `~VoxelGrid':
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/voxel_grid.h:571:
> undefined reference to `vtable for
> pcl::VoxelGrid<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/voxel_grid.h:571:
> undefined reference to `vtable for
> pcl::VoxelGrid<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> CMakeFiles/tutorial_filter_voxel_grid.dir/src/examples/filter_voxel_grid.o:
> In function `~Filter':
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/filter.h:405:
> undefined reference to `vtable for
> pcl::Filter<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/filter.h:405:
> undefined reference to `vtable for
> pcl::Filter<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/filter.h:405:
> undefined reference to `vtable for
> pcl::Filter<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/filter.h:405:
> undefined reference to `vtable for
> pcl::Filter<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> CMakeFiles/tutorial_filter_voxel_grid.dir/src/examples/filter_voxel_grid.o:
> In function `~VoxelGrid':
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/voxel_grid.h:571:
> undefined reference to `vtable for
> pcl::VoxelGrid<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/voxel_grid.h:571:
> undefined reference to `vtable for
> pcl::VoxelGrid<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> CMakeFiles/tutorial_filter_voxel_grid.dir/src/examples/filter_voxel_grid.o:
> In function `~Filter':
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/filter.h:405:
> undefined reference to `vtable for
> pcl::Filter<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> /home/jordi/ros/stacks/point_cloud_perception/pcl/include/pcl/filters/filter.h:405:
> undefined reference to `vtable for
> pcl::Filter<sensor_msgs::PointCloud2_<std::allocator<void> > >'
> collect2: ld returned 1 exit status
> make[3]: *** [../bin/tutorial_filter_voxel_grid] Error 1
> make[3]: Leaving directory
> `/home/jordi/ros/stacks/point_cloud_perception/pcl/build'
> make[2]: *** [CMakeFiles/tutorial_filter_voxel_grid.dir/all] Error 2
> make[2]: Leaving directory
> `/home/jordi/ros/stacks/point_cloud_perception/pcl/build'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory
> `/home/jordi/ros/stacks/point_cloud_perception/pcl/build'
> make: *** [all] Error 2
>
> Is there any dependency missing?
>
> Thanks in advance
>
> --
> Jordi Pages, PhD
> Researcher
> Pal Robotics S.L.
>
> Tel: +34.93.414.53.47
> Fax: +34.93.209.11.09
> C/ Pujades 77-79 4º 4ª 08005 Barcelona, Spain.
> http://www.pal-robotics.com/
>
> AVISO DE CONFIDENCIALIDAD: Este mensaje y sus documentos adjuntos, pueden
> contener información privilegiada y/o confidencial que está dirigida
> exclusivamente a su destinatario.
> Si usted recibe este mensaje y no es el destinatario indicado, o el
> empleado encargado de su entrega a dicha persona, por favor, notifíquelo
> inmediatamente y remita el mensaje original a la dirección
> de correo electrónico indicada. Cualquier copia, uso o distribución no
> autorizados de esta comunicación queda estrictamente prohibida.
>
> CONFIDENTIALITY NOTICE: This e-mail and the accompanying document(s) may
> contain confidential information which is privileged and intended only for
> the individual or entity to whom they are addressed.  If you are not the
> intended recipient, you are hereby notified that any disclosure, copying,
> distribution or use of this e-mail and/or accompanying document(s) is
> strictly prohibited.  If you have received this e-mail in error, please
> immediately notify the sender at the above e-mail address.
>
>


-- 
Jordi Pages, PhD
Researcher
Pal Robotics S.L.

Tel: +34.93.414.53.47
Fax: +34.93.209.11.09
C/ Pujades 77-79 4º 4ª 08005 Barcelona, Spain.
http://www.pal-robotics.com/

AVISO DE CONFIDENCIALIDAD: Este mensaje y sus documentos adjuntos, pueden
contener información privilegiada y/o confidencial que está dirigida
exclusivamente a su destinatario.
Si usted recibe este mensaje y no es el destinatario indicado, o el empleado
encargado de su entrega a dicha persona, por favor, notifíquelo
inmediatamente y remita el mensaje original a la dirección
de correo electrónico indicada. Cualquier copia, uso o distribución no
autorizados de esta comunicación queda estrictamente prohibida.

CONFIDENTIALITY NOTICE: This e-mail and the accompanying document(s) may
contain confidential information which is privileged and intended only for
the individual or entity to whom they are addressed.  If you are not the
intended recipient, you are hereby notified that any disclosure, copying,
distribution or use of this e-mail and/or accompanying document(s) is
strictly prohibited.  If you have received this e-mail in error, please
immediately notify the sender at the above e-mail address.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20100610/a58a1489/attachment-0003.html>


More information about the ros-users mailing list