ros2 / ros1_bridge

ROS 2 package that provides bidirectional communication between ROS 1 and ROS 2
Apache License 2.0
448 stars 286 forks source link

Many packages not found by find_ros1_package() during build #418

Open lucasw opened 1 year ago

lucasw commented 1 year ago

Bug report

Building ros1_bridge is erroring out with find_ros1_package() failed to find 'opencv_apps' using pkg_check_modules()

Ubuntu 23.04

From source

3d5328dc21564d2130b4ded30afe5cd1c41cf033

Whatever default is for building iron from source

Steps to reproduce issue

Building ros1 one from source like this:

https://github.com/lucasw/ros_from_src/blob/debianize/ubuntu_2204/README.md (though it's slightly different on 23.04 vs. 22.04)

Building ros2 iron from source as in https://github.com/lucasw/ros_from_src/issues/29, using https://docs.ros.org/en/iron/Installation/Alternatives/Ubuntu-Development-Setup.html as a starting point but not adding any apt package repositories:

cd ros2_iron
colcon build --symlink-install

Building ros1_bridge in an overlaying workspace overlay like this following the instructions https://docs.ros.org/en/iron/How-To-Guides/Using-ros1_bridge-Jammy-upstream.html#build-ros1-bridge:

source ~/install_base_catkin_ws/install/setup.bash
source ~/ros/ros2_iron/install/local_setup.bash
MAKEFLAGS="-j 4" colcon build --symlink-install --executor sequential --event-handlers console_cohesion+ --cmake-args -DCMAKE_VERBOSE_MAKEFILE=ON

It looks like some paths are scanned for ros1 packages, then that list is iterated through in a later step but not finding it,

Expected behavior

Actual behavior

Additional information

Currently using https://github.com/lucasw/ros1_bridge/tree/skip_not_found as a workaround, which results in it skipping these:

 apriltag_ros
 base_local_planner
 costmap_2d 
 find_object_2d 
 frei0r_image 
 fuse_models 
 image_view2 
 jsk_rviz_plugins 
 jsk_topic_tools 
 laser_assembler 
 navfn 
 nodelet_rosbag 
 opencv_apps 
 polled_camera 
 robot_localization 
 rviz

I'll try out some examples/demos to see if the parts that didn't get skipped are working.

Some of those may have modifications to build in 23.04, the vcs yaml in ros_from_src shows which branches are in use.

The one exception is opencv_apps, which is the debian installed ros-opencv-apps 2.0.2-8build1. I'll try overlaying that in the catkin_ws to see if that helps -> nope no change, it still isn't found.

rospack find has no trouble finding any of them.