ros2/rmw_connextdds

Compilation error

Closed this issue · 1 comments

System Info

  • OS
    • Ubuntu 22.04
  • ROS version and installation type
    • rolling
  • RTI Connext DDS version and installation type
    • 6.1.0
  • RMW version or commit hash

Bug Description

Get the following compile error with tag 0.12.0 :

--- stderr: rmw_connextdds_common
/home/ros/ros2_connextdds/src/ros2/rmw_connextdds/rmw_connextdds_common/src/common/rmw_publication.cpp: In function ‘rmw_publisher_t* rmw_api_connextdds_create_publisher(const rmw_node_t*, const rosidl_message_type_support_t*, const char*, const rmw_qos_profile_t*, const rmw_publisher_options_t*)’:
/home/ros/ros2_connextdds/src/ros2/rmw_connextdds/rmw_connextdds_common/src/common/rmw_publication.cpp:171:35: error: ‘qos_profile_get_best_available_for_topic_publisher’ is not a member of ‘rmw_dds_common’
  171 |   rmw_ret_t ret = rmw_dds_common::qos_profile_get_best_available_for_topic_publisher(
      |                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gmake[2]: *** [CMakeFiles/rmw_connextdds_common_pro.dir/build.make:216: CMakeFiles/rmw_connextdds_common_pro.dir/src/common/rmw_publication.cpp.o] Error 1
gmake[2]: *** Waiting for unfinished jobs....
gmake[1]: *** [CMakeFiles/Makefile2:137: CMakeFiles/rmw_connextdds_common_pro.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2
---
Failed   <<< rmw_connextdds_common [9.28s, exited with code 2]

Expected Behavior

Successful compilation

How to Reproduce

Using docker image ->amd64/ros:rolling-ros-base;

RUN . /opt/ros/rolling/setup.sh && \
	mkdir -p ~/ros2_connextdds/src/ros2 && \
	cd ~/ros2_connextdds && \
	git clone https://github.com/ros2/rmw_connextdds.git src/ros2/rmw_connextdds && \
	cd src/ros2/rmw_connextdds && git checkout 0.12.0 && cd - && \
	colcon build --symlink-install --cmake-args -DCONNEXTDDS_ARCH=x64Linux4gcc7.3.0

Workarounds

[Ways that you have discovered to overcome the issue, if any]

Additional context

[Any additional relevant information about the problem]

We added a new API to the sources, so we needed to do some releases. That is done now, so if you use the Rolling testing repository, you should be able to compile just fine. We haven't synced it out to "main" yet, so if you are using the regular repository you'll have to wait a bit.