ROS Resources: Documentation | Support | Discussion Forum | Service Status | Q&A answers.ros.org

Ros1_bridge build issues

I am trying to build ros1_bridge in ros 2. I source the setup.bash and execute it as given in the tutorial.However it fails to give the ros1_bridge executables. However it gives the executable like talker and listener.

I am using ubuntu 16.04 OS with ros kinetic and ros2 beta 2

For building the ros1_bridge I am using ament, as instructed in the bridge communications tutorial.

Duplicate of this github ticket. Let’s keep the discussion there so that we don’t duplicate effort answering the same question in 2 places. Can you also please update your question on github to provide all the information listed in the issue template so that we can have a better understanding of the issue?

Thanks!

Here is working example I created for myself some time ago.
https://drive.google.com/open?id=0B68BPOrWQeULcmVXNDdTdTRYcFE
Check README.md file. It has detailed explanation how to use it.

1 Like

Can you maybe summarize what the differences are compared to the official instructions?

Well. The main difference is that it’s ready to use example one can compile and run right away and then use as a basis for own project. It’s more like quick start guide I guess.

AFAICT the difference in the provided example is that it provides a custom message package in ROS 1 and ROS 2 format. This allows to test overlay workspaces out of the box with instructions on how to build them (namely running catkin_make on the ROS 1 version and ament build on the ROS 2 version). The rest of the difference are modifications to the bridge CMakeLists to find ROS1 message packages (applies only for users using pre-beta2).

@mch Would it be possible for you to test your example with ROS2 beta3 without all the CMake modifications and confirm that no code change is required to transfer custom messages through the bridge? I think it’s great to have quick start guides and would love to see a stripped down version with only what is required to make it work to avoid confusing users with unnecessary code changes.

Thanks!