Open XQSwx opened 1 month ago
Can you help me? thank you
@XQSwx thanks for creating issue.
unfortunately, cross-compile is not supported anymore? https://docs.ros.org/en/humble/How-To-Guides/Cross-compilation.html, https://github.com/ros-tooling/cross_compile repo has been archived.
"I know that I compiled this using the Buildroot from Rockchip, so I can only work based on this compiled base."
Ultimately, there's a bug here, unable to generate cross-compilation chain's link libraries. Only x86 ones can be generated.
I just need to add the line 'SUFFIX ".cpython-38-aarch64-linux-gnu.so"' after 'set_target_properties(${_library_name} PROPERTIES', but I've broken the build chain dependency. My understanding of CMake is not very deep.
Finished <<< rclpy [21.8s]
Maybe my understanding is incorrect, I suspect that the CMakeLists file does not match the generation of linked libraries for cross-compilation.
unfortunately, cross-compile is not supported anymore? https://docs.ros.org/en/humble/How-To-Guides/Cross-compilation.html, https://github.com/ros-tooling/cross_compile repo has been archived.
You are right that it is currently not a supported configuration. Because of that, there may indeed be a bug here.
That said, if @XQSwx can find and fix a bug here, we'd be very happy to review a PR to make fixes.
Although cross compile is not supported, every compilation passes the cmake parameter. Can we obtain these parameters to generate a linked library. I have compiled all packages for ROS2, and only this package and ROSBAG2 have encountered this issue. Although I used some clever methods to compile it. But if others use this cmakelist, they may still encounter these issues cmake-args:
@clalancette Others should use the following two parameters passed by colcon to define the generated file "-DCMAKE_SYSTEM_PROCESSOR=aarch64" “-DPYTHON_SOABI=cpython-36m-aarch64-linux-gnu”
Bug report
Required Info:
Steps to reproduce issue
"When cross-compiling with aarch64, it was found that the generated .so file is for the X86 platform instead of aarch64. Other ROS2-generated files are for the aarch64 platform."
Expected behavior
Actual behavior
Additional information
Summary: 1 package finished [22.6s]
Feature request
Feature description
Implementation considerations