Problem using pcl::io::loadPCDFile

asked 2019-07-18 11:12:18 -0500

Lucas Amparo gravatar image

updated 2019-07-18 11:19:46 -0500

Hi guys.

This snippet is failing on ROS environment, but working well outside the ROS

std::vector<std::string> cloud_list = buildPath(input_path);
std::vector<PointC::Ptr> clouds;

for (std::string s : cloud_list) {
   PointC::Ptr cloud(new PointC());
   pcl::io::loadPCDFile(s, *cloud);

If I try to load a cloud using a hardcoded path, isn't working too.

Someone had some similar that? Any ideas? Just kill the process. Without any clue about the problem.

The "Error":

Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://amparo-N8xxEP6:42423/


 * /input_path: /home/lucasamparo...
 * /logging: True
 * /rosdistro: kinetic
 * /rosversion: 1.12.14
 * /save_path: /tmp

    simulation_merge (point_cloud_registration/simulation_merge)

auto-starting new master
process[master]: started with pid [25892]

setting /run_id to 89cce594-a977-11e9-a79e-80fa5b591a46
process[rosout-1]: started with pid [25907]
started core service [/rosout]
process[simulation_merge-2]: started with pid [25915]
[simulation_merge-2] process has died [pid 25915, exit code -11, cmd /home/lucasamparo/bir.jiro-buildconf/devel/lib/point_cloud_registration/simulation_merge __name:=simulation_merge __log:=/home/lucasamparo/.ros/log/89cce594-a977-11e9-a79e-80fa5b591a46/simulation_merge-2.log].
log file: /home/lucasamparo/.ros/log/89cce594-a977-11e9-a79e-80fa5b591a46/simulation_merge-2*.log

I'm very lost about this. This log didn't exist.

edit retag flag offensive close merge delete


Looks like a mismatch on library linking. ROS bring a version of PCL and my CMake bring another. If I comment the find_package(PCL) the code works. I'll run a test to validate that cause.

Lucas Amparo gravatar image Lucas Amparo  ( 2019-07-18 12:21:02 -0500 )edit