You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This appears to happen because the code generated by rosidl includes <Python.h>, which is installed in the sysroot as python-native is a dependency of some of the build tools (see recipe and bbappend).
Instead of using the python.h configured for the target, we end up using the host's config. I tried adding python3 to ROS_BUILD_DEPENDS with the same result. I suspect this issue may affect many other packages.
The text was updated successfully, but these errors were encountered:
I found that adding inherit python3targetconfig (as mentioned in openembedded/meta-openembedded#718) to rmw-dds-common fixes the compilation step for that package, but as expected many other packages failed in the same way.
In the end I replaced python3native for python3targetconfig in ros_ament_cmake.bbclass:
This let me successfully build ros-core for the rpi0-wifi. I haven't built it into an image and tried it on the target yet.
However, this leads to the question "how did building for 32-bit targets on 64-bit hosts ever work?"
Looking at the history of ros_ament_cmake.bbclass, this python3native inherited class was there from the beginning, i.e. it didn't change recently.
I know at least one colleague that has built ROS2 using meta-ros for an ATSAMA5D27 (32-bit).
So the mystery remains. I'm not sure if the proposed patch is appropriate or a hack.
Describe the bug
rmw-dds-common
(and possibly other packages) fail to compile when building for a 32 bit target on a 64 bit machine.To Reproduce
Error message:
This appears to happen because the code generated by rosidl includes <Python.h>, which is installed in the sysroot as python-native is a dependency of some of the build tools (see recipe and bbappend).
Instead of using the python.h configured for the target, we end up using the host's config. I tried adding
python3
toROS_BUILD_DEPENDS
with the same result. I suspect this issue may affect many other packages.The text was updated successfully, but these errors were encountered: