ros2 / rosidl_typesupport

Packages which provide the typesupport for ROS messages and services
Apache License 2.0
13 stars 34 forks source link

No mimick.h for humble build #151

Closed RodBelaFarin closed 4 months ago

RodBelaFarin commented 4 months ago

Bug report

Required Info:

Steps to reproduce issue

mkdir -p test_ws/src
cd test_ws/src
git clone https://github.com/ros2/rosidl_typesupport -b humble
sudo apt install ros-humble-performance-test-fixture # as a missing dependency
cd ..
colcon build

Expected behavior

Build finishes without errors.

Actual behavior

--- stderr: rosidl_typesupport_c
In file included from /home/ros/rosidl_ws/src/rosidl_typesupport/rosidl_typesupport_c/test/test_service_type_support_dispatch.cpp:24: /home/ros/rosidl_ws/src/rosidl_typesupport/rosidl_typesupport_c/test/./mocking_utils/patch.hpp:38:10: fatal error: mimick/mimick.h: No such file or directory 38 | #include "mimick/mimick.h"

mjcarroll commented 4 months ago

You are missing mimick_vendor as a test dependency. I believe that it wouldn't be resolved via the apt packages, as it is only used for testing as specified in the rosidl_typesupport_c package.xml: https://github.com/ros2/rosidl_typesupport/blob/d5d56e65f0efcf0aaf7aa60e63e1acb107c4211a/rosidl_typesupport_c/package.xml#L42

You can resolve this by either fully resolving all of the rosdeps:

rosdep install --from-paths src --ignore-src -y --skip-keys "fastcdr rti-connext-dds-6.0.1 urdfdom_headers"

Or cloning mimick_vendor into your workspace and building it.

RodBelaFarin commented 4 months ago

Installed mimick_vendor as a binary package. That did it, thanks!