-
Notifications
You must be signed in to change notification settings - Fork 252
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
Error building rmw-dds-common for raspberrypi0-wifi #1205
Comments
I found that adding In the end I replaced diff --git a/meta-ros2/classes/ros_ament_cmake.bbclass b/meta-ros2/classes/ros_ament_cmake.bbclass
index d1705a8b4..a559fab5e 100644
--- a/meta-ros2/classes/ros_ament_cmake.bbclass
+++ b/meta-ros2/classes/ros_ament_cmake.bbclass
@@ -23,7 +23,7 @@ EXTRA_OECMAKE:append:class-target = " -DPYTHON_SOABI=${PYTHON_SOABI}"
#
export AMENT_PREFIX_PATH="${STAGING_DIR_HOST}${prefix}:${STAGING_DIR_NATIVE}${prefix}:${STAGING_DIR_HOST}${ros_prefix}:${STAGING_DIR_NATIVE}${ros_prefix}"
-inherit cmake python3native
+inherit cmake python3targetconfig
FILES:${PN}:prepend = " \
${datadir}/ament_index \ This let me successfully build However, this leads to the question "how did building for 32-bit targets on 64-bit hosts ever work?" |
I think the change helps. |
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: