ros2 / rmw_fastrtps

Implementation of the ROS Middleware (rmw) Interface using eProsima's Fast RTPS.
Apache License 2.0
157 stars 117 forks source link

rmw_fastrtps get type support failed #630

Open WhiteRiverSorrow opened 2 years ago

WhiteRiverSorrow commented 2 years ago

Bug report

Required Info:

Steps to reproduce issue

1.Replace microros' rclc with rclcpp and xrce-dds with fast dds; 2.Compile the framework through the generate_lib of microros, and compile the static library implemented by rclcpp & fastdds; 3.Create a main function through MinimalPublisher of rclcpp, link the static library compiled above, and generate an executable program; 4.Running in linux environment will report this error:

"Type support not from this implementation. Got: "

Expected behavior

Program runs normally

Actual behavior

rmw create publisher failed when rcl create node

Additional information

It seems that when RMW created the publisher, when Get RMW Type Support, it could not find the type support handle of rosidl_typesupport_fastrtps_cpp of the corresponding ParticipantEntitiesInfo msg. I took a look at the definition of this structure in the ros_dds_common package, and I also correctly generated and linked the dynamic library librmw_dds_common__rosidl_typesupport_cpp.so, what is going on?