-
Notifications
You must be signed in to change notification settings - Fork 53
Closed
Description
Hello, I am creating a project that runs perfectly well on Ubuntu 22 with ROS2 Iron.
Unfortunately, I also need it to run on Ubuntu 24 with ROS2 Iron, which required me to build ROS2 Iron from sources. That generally works well - I can control my robot just fine. What I can't do is make my Rust code work with it.
Here is my repository: https://github.com/gjf2a/trajectory_mapper
When I try to compile it on Ubuntu 22, everything works fine. When I try on Ubuntu 24, I get the following error:
Generate bindings file '/home/ferrer/trajectory_mapper/target/debug/build/r2r_rcl-0f95862c1d61477e/out/f2001a1aae781924ad5d5e8f16a78e1e08e71423ac05f9a98f06392f545f4268/rcl_bindings.rs'
src/rcl_wrapper.h:27:10: fatal error: 'rosidl_runtime_c/rosidl_runtime_c.h' file not found
thread 'main' panicked at /home/ferrer/.cargo/registry/src/index.crates.io-6f17d22bba15001f/r2r_rcl-0.9.4/build.rs:103:10:
Unable to generate bindings: ClangDiagnostic("src/rcl_wrapper.h:27:10: fatal error: 'rosidl_runtime_c/rosidl_runtime_c.h' file not found\n")
As an experiment, I used touch to create a bogus rosidl_runtime_c.h, and I got this error:
error[E0412]: cannot find type `rosidl_runtime_c__U16String__Sequence` in this scope
--> /home/ferrer/.cargo/registry/src/index.crates.io-6f17d22bba15001f/r2r_rcl-0.9.4/src/lib.rs:55:6
|
55 | impl rosidl_runtime_c__U16String__Sequence {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: a type alias with a similar name exists: `rosidl_runtime_c__byte__Sequence`
|
::: /home/ferrer/trajectory_mapper/target/debug/build/r2r_rcl-0f95862c1d61477e/out/rcl_bindings.rs:1713:1
|
1713 | pub type rosidl_runtime_c__byte__Sequence = [u64; 3usize];
| ---------------------------------------------------------- similarly named type alias `rosidl_runtime_c__byte__Sequence` defined here
I would greatly appreciate any and all advice you can offer. Thanks!
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels