0
$\begingroup$

I wanted to experiment with point cloud filters from pcl_ros in my ROS2 project. Hence, I have added pcl_ros as an <exec_depend> in my package.xml and I can see pcl_ros folder in /opt/ros/iron/share (after installing deps through rosdep). Just to confirm, I also did a apt install ros-iron-pcl-ros and saw that the package was already installed (as expected).

However, when I create an xml launch file to start the filter nodes, I see the following error:

package 'pcl_ros' found at '/opt/ros/iron', but libexec directory '/opt/ros/iron/lib/pcl_ros' does not exist

This is how my xml launch file looks like:

<launch>
    <node name="basic_filter" pkg="pcl_ros" exec="filter_passthrough_node" output="log">
        <remap from="input" to="my_pointcloud" />
        <remap from="output" to="my_filtered_pointcloud" />
    </node>
</launch>

I created the launch file based on the package name as mentioned here and the executable name mentioned here.

There is indeed no pcl_ros folder in /opt/ros/iron/lib as seen in the error message. But I was expecting the binary install would also install the executables.

Then, I pulled pcl_ros from source (ros2 branch). It compiled successfully and the launch file starts the passthrough filter with:

[INFO] [filter_passthrough_node-1]: process started with pid [83765]

This prompted me to check the release tag used for the binaries and it turns out that the CMakeLists.txt in the release binaries doesn't have rules to install the filter targets.

Further the commit history shows that the necessary rules to install the filter targets were already done about a year ago (well before the latest release date) on the ROS package index.

Hence, I was wondering, if support for these filters is being phased out and hence recent releases don't use the updated CMakeLists.txt. Should I use a different package?

Kindly let me know if further information is necessary.

System: Ubuntu 22.04

ROS Distro: Iron Irwini

$\endgroup$
1

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.