Ask Your Question
0

perception_pcl compile issue

asked 2016-03-11 07:54:14 -0500

MarkyMark2012 gravatar image

Hi all,

I'm trying to compile perception_pcl on my Pi 2. I have compiled pcl 1.7 and that's installed sucessfully. But I'm getting the error messages below - all saying the file pcl_msgs/PointIndices.h cannot be found. This is apart of the pcl distro and the file is on the system. Any ideas?

Thanks

Mark

Building CXX object perception_pcl/pcl_ros/CMakeFiles/convert_pointcloud_to_image.dir/tools/convert_pointcloud_to_image.cpp.o
Building CXX object perception_pcl/pcl_ros/CMakeFiles/convert_pcd_to_image.dir/tools/convert_pcd_to_image.cpp.o
[ 29%] Building CXX object perception_pcl/pcl_ros/CMakeFiles/pcd_to_pointcloud.dir/tools/pcd_to_pointcloud.cpp.o
[ 30%] Building CXX object perception_pcl/pcl_ros/CMakeFiles/pointcloud_to_pcd.dir/tools/pointcloud_to_pcd.cpp.o
In file included from /home/pi/ros_ws/src/perception_pcl/pcl_ros/tools/pcd_to_pointcloud.cpp:51:0:
/home/pi/ros_ws/src/pcl_conversions/include/pcl_conversions/pcl_conversions.h:59:35: fatal error: pcl_msgs/PointIndices.h: No such file or directory
#include <pcl_msgs/PointIndices.h>
^
In file included from /home/pi/ros_ws/src/perception_pcl/pcl_ros/tools/convert_pointcloud_to_image.cpp:49:0:
/home/pi/ros_ws/src/pcl_conversions/include/pcl_conversions/pcl_conversions.h:59:35: fatal error:     pcl_msgs/PointIndices.h: No such file or directory
#include <pcl_msgs/PointIndices.h>
^
In file included from /home/pi/ros_ws/src/perception_pcl/pcl_ros/tools/pointcloud_to_pcd.cpp:48:0:/home/pi/ros_ws/src/pcl_conversions/include/pcl_conversions/pcl_conversions.h:59:35: fatal error:   pcl_msgs/PointIndices.h:     No such file or directory
#include <pcl_msgs/PointIndices.h>
edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
0

answered 2016-03-14 03:42:07 -0500

MarkyMark2012 gravatar image

Okay found the problem - the PCL build takes up over 2Gb of swap space (god knows why) when compiling some parts. So increasing the swap space did the job (Took over 24 hrs on Pi 2).

Also - should anyone else happen on these I kow the Pi 2 has 4 corse but set =-j1 because as stated the demand on memory is so high that is won't make any difference.

Mark

edit flag offensive delete link more
0

answered 2016-03-12 12:45:04 -0500

Hey,

I assume that you want to use newer version of PCL (which was not installed with ROS). You would need to install PCL from source. Download desired PCL repo from this link. Then, compile it from source while setting USE_ROS param 'true'.

mkdir build
cd build 
cmake .. -DUSE_ROS=1
sudo make install -j

another way is to include standalone-pcl directory in CMakeLists.txt file of your package using include_directories(${PCL_INCLUDE_DIRS} ) and linking executable with target_link_libraries(exec_name ${catkin_LIBRARIES} ${PCL_LIBRARIES})

hope this helps

edit flag offensive delete link more

Comments

Hi - cheers for the answer - just FYI PCL has now been separated from ROS - https://github.com/PointCloudLibrary/pcl/wiki/Remove-ROS

Mark

MarkyMark2012 gravatar image MarkyMark2012  ( 2016-03-14 03:42:48 -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

1 follower

Stats

Asked: 2016-03-11 07:54:14 -0500

Seen: 452 times

Last updated: Mar 14 '16