micro-ROS / micro-ROS/micro_ros_setup

Compatibility issues of micro-ROS with ROS 2 Jazzy message types.

Open
#808 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Shell
Stars
509
Forks
183
Avg merge
22h 26m
Merged PRs (30d)
7

Description

## Issue template

- Hardware description: host
- RTOS: linux-host
- Installation type: micro_ros_setup
- Version or commit hash:

#### Steps to reproduce the issue
Follow the tutorial on [First micro-ROS Application on Linux | micro-ROS](https://micro.vulcanexus.org/docs/tutorials/core/first_application_linux/)

#### Expected behavior
Pass the build when execute `ros2 run micro_ros_setup build_firmware.sh`
#### Actual behavior
Build failed
```
/usr/bin/ld: CMakeFiles/std_srvs__rosidl_typesupport_microxrcedds_c.dir/rosidl_typesupport_microxrcedds_c/std_srvs/srv/detail/microxrcedds/empty__type_support_c.c.o: in function `_Empty_Event__cdr_serialize':
empty__type_support_c.c:(.text+0x3a5): undefined reference to `rosidl_typesupport_microxrcedds_c__get_message_type_support_handle__service_msgs__msg__ServiceEventInfo'
/usr/bin/ld: CMakeFiles/std_srvs__rosidl_typesupport_microxrcedds_c.dir/rosidl_typesupport_microxrcedds_c/std_srvs/srv/detail/microxrcedds/empty__type_support_c.c.o: in function `_Empty_Event__cdr_deserialize':
empty__type_support_c.c:(.text+0x510): undefined reference to `rosidl_typesupport_microxrcedds_c__get_message_type_support_handle__service_msgs__msg__ServiceEventInfo'
/usr/bin/ld: CMakeFiles/std_srvs__rosidl_typesupport_microxrcedds_c.dir/rosidl_typesupport_microxrcedds_c/std_srvs/srv/detail/microxrcedds/set_bool__type_support_c.c.o: in function `_SetBool_Event__cdr_serialize':
set_bool__type_support_c.c:(.text+0x50d): undefined reference to `rosidl_typesupport_microxrcedds_c__get_message_type_support_handle__service_msgs__msg__ServiceEventInfo'
/usr/bin/ld: CMakeFiles/std_srvs__rosidl_typesupport_microxrcedds_c.dir/rosidl_typesupport_microxrcedds_c/std_srvs/srv/detail/microxrcedds/set_bool__type_support_c.c.o: in function `_SetBool_Event__cdr_deserialize':
set_bool__type_support_c.c:(.text+0x67c): undefined reference to `rosidl_typesupport_microxrcedds_c__get_message_type_support_handle__service_msgs__msg__ServiceEventInfo'
/usr/bin/ld: CMakeFiles/std_srvs__rosidl_typesupport_microxrcedds_c.dir/rosidl_typesupport_microxrcedds_c/std_srvs/srv/detail/microxrcedds/trigger__type_support_c.c.o: in function `_Trigger_Event__cdr_serialize':
trigger__type_support_c.c:(.text+0x50d): undefined reference to `rosidl_typesupport_microxrcedds_c__get_message_type_support_handle__service_msgs__msg__ServiceEventInfo'
/usr/bin/ld: CMakeFiles/std_srvs__rosidl_typesupport_microxrcedds_c.dir/rosidl_typesupport_microxrcedds_c/std_srvs/srv/detail/microxrcedds/trigger__type_support_c.c.o:trigger__type_support_c.c:(.text+0x67c): more undefined references to `rosidl_typesupport_microxrcedds_c__get_message_type_support_handle__service_msgs__msg__ServiceEventInfo' follow
collect2: error: ld returned 1 exit status
gmake[2]: *** [CMakeFiles/std_srvs__rosidl_typesupport_microxrcedds_c.dir/build.make:186: libstd_srvs__rosidl_typesupport_microxrcedds_c.so] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:294: CMakeFiles/std_srvs__rosidl_typesupport_microxrcedds_c.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
gmake: *** [Makefile:146: all] Error 2
---
Failed <<< std_srvs [10.4s, exited with code 2]
```
#### Additional information
This command in humble however smoothly passed

Contributor guide

Open the contributing guide

Research direction

Start with the First micro-ROS Application on Linux tutorial and reproduce the failure with `ros2 run micro_ros_setup build_firmware.sh`. Trace the `std_srvs` build and the missing `service_msgs/msg/ServiceEventInfo` microxrcedds symbols, then verify that the Jazzy firmware build completes successfully without the linker errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux, shell
Domain
build-system, embedded-iot
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.