-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Using 'rosidl_generate_dds_interfaces' cmake module does not generate any IDL file #48
Comments
@nuclearsandwich @dirk-thomas can I get your feedback here? Thanks! |
Are you referring here to the Debian packages or the provided archive builds? Bouncy or Crystal?
I'm not sure that this is still the case in Crystal. I thought that ros2/rmw_fastrtps#218 switched rmw_fastrtps_cpp to default to static typesupport. As far as the build error itself: I am not very familar with the IDL pipeline but if you share a link to the source for the package you're building I can try to reproduce the failure. |
Debian package for Bouncy.
I am using Bouncy it seems to be the case still.
Sure thing: https://github.com/PX4/px4_ros_com. Though the above snippet needs to be added bellow https://github.com/PX4/px4_ros_com/blob/master/CMakeLists.txt#L48. The package does have Thanks for the feedback and waiting for your testing results. Note: a similar problem was reported in https://answers.ros.org/question/268396/ros2-generating-dds-idl-files-from-msg-ros-message-format/ |
@nuclearsandwich for a straightforward test and to reproduce:
rosidl_generate_dds_interfaces("${PROJECT_NAME}_fastrtps_idl"
IDL_FILES ${ROS_UORB_MSGS}
DEPENDENCY_PACKAGE_NAMES ${PROJECT_NAME} builtin_interfaces
OUTPUT_SUBFOLDERS "dds_fastrtps"
) under https://github.com/PX4/px4_ros_com/blob/master/CMakeLists.txt#L48.
|
@nuclearsandwich any inputs? Thanks! |
Thanks for the reproduction steps @TSC21. Unfortunately I haven't yet had a chance to try them yet. Off the top of my head I'm not sure that Bouncy generates IDL for Fast-RTPS under any circumstances. I believe your options will be to generate IDL from the OpenSplice or Connext RMW providers or try using Crystal and leveraging the static typesupport pipeline for Fast-RTPS. |
No problem. Please, when you have time, try to reproduce it. I think it's critical to try to understand what's happening with
But wasn't |
The function
No, unfortunately different vendors still require slightly different versions of I will go ahead and close this ticket since the problem is in the way the function is being used. Please feel free to continue commenting. |
@dirk-thomas thanks for the suggestion. I was able to generate the IDL files after setting up the proper dependencies of the target with respect to the IDL file list. |
@dirk-thomas I know this issue is close but this is still a related question: I see that the |
Yes, you should construct the absolute path based on this one. |
Ok thanks found a solution by using |
Required Info:
Steps to reproduce issue
Hi,
I am trying to use this package to generate DDS IDL files from ROS messages. I know that
rmw_fastrtps_cpp
is different since it uses introspection rather than generated code specific to each message so for FastRTPS, which results on one not having to generate.idl
files. Though, for my particular case, I do require the IDL's to be generated in order to generate code for a micro-RTPS agent daemon.The following snippet is what I am adding to the
CMakeLists.txt
file:Where
MSGS
are the list of ROS msgs insidepackage_dir/msg
. I usedds_fastrtps
since it's the same naming for the output folder of the OpenSplice IDL files.Expected behavior
The expected behaviour, of course, is that the IDL files get generated, so they can be used.
Actual behavior
It's verified that
rosidl_generator_dds_idl__dds_fastrtps__arguments.json
is created under the build folder, though nobuild/<project_name>/rosidl_generator_dds_idl/<project_name>/msg/dds_fastrpts
directory is created, which results on having an error on the install process:Thanks in advance for your support!
The text was updated successfully, but these errors were encountered: