Switch RK3576 toolchain to Buildroot SDK and migrate to Python 3.11
This commit is contained in:
@@ -23,6 +23,9 @@ COPY --from=vendor_images ${TARGET_SYSROOT} ${TARGET_SYSROOT}
|
||||
COPY ros2/${ROS_DISTRO}/patch /workspace/patch
|
||||
COPY ros2/ros_cpp /workspace/src/ros_cpp
|
||||
|
||||
# COPY rk3576/rk3576.toolchain.cmake /opt/cmake/
|
||||
# RUN python3.11 -m pip install lark
|
||||
|
||||
# apply patch
|
||||
RUN patch -p1 -d /workspace/src/ros2/rclcpp < /workspace/patch/memory_strategy.patch
|
||||
|
||||
@@ -32,7 +35,7 @@ RUN touch src/ros2/geometry2/tf2_bullet/COLCON_IGNORE \
|
||||
&& touch src/diagnostics/diagnostic_remote_logging/COLCON_IGNORE
|
||||
|
||||
# -DPYTHON_SOABI=cpython-310-aarch64-linux-gnu
|
||||
RUN MAKEFLAGS="-j6" ROS_ROOT=${TARGET_SYSROOT} colcon build \
|
||||
RUN MAKEFLAGS="-j6" colcon build \
|
||||
--executor parallel \
|
||||
--parallel-workers 6 \
|
||||
--install-base ${TARGET_SYSROOT} \
|
||||
@@ -46,23 +49,22 @@ RUN MAKEFLAGS="-j6" ROS_ROOT=${TARGET_SYSROOT} colcon build \
|
||||
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DTRACETOOLS_DISABLED=ON \
|
||||
-DCV_BRIDGE_DISABLE_PYTHON=ON \
|
||||
-DPYTHON_SOABI=cpython-310-aarch64-linux-gnu
|
||||
-DCV_BRIDGE_DISABLE_PYTHON=ON
|
||||
|
||||
# pybind11 python soabi issue
|
||||
WORKDIR ${TARGET_SYSROOT}/lib/python3.10/site-packages/rclpy
|
||||
RUN mv _rclpy_pybind11.cpython-310-x86_64-linux-gnu.so _rclpy_pybind11.cpython-310-aarch64-linux-gnu.so
|
||||
WORKDIR ${TARGET_SYSROOT}/lib/python3.10/site-packages/rosbag2_py
|
||||
RUN mv _transport.cpython-310-x86_64-linux-gnu.so _transport.cpython-310-aarch64-linux-gnu.so
|
||||
RUN mv _info.cpython-310-x86_64-linux-gnu.so _info.cpython-310-aarch64-linux-gnu.so
|
||||
RUN mv _compression_options.cpython-310-x86_64-linux-gnu.so _compression_options.cpython-310-aarch64-linux-gnu.so
|
||||
RUN mv _storage.cpython-310-x86_64-linux-gnu.so _storage.cpython-310-aarch64-linux-gnu.so
|
||||
RUN mv _reindexer.cpython-310-x86_64-linux-gnu.so _reindexer.cpython-310-aarch64-linux-gnu.so
|
||||
RUN mv _writer.cpython-310-x86_64-linux-gnu.so _writer.cpython-310-aarch64-linux-gnu.so
|
||||
RUN mv _message_definitions.cpython-310-x86_64-linux-gnu.so _message_definitions.cpython-310-aarch64-linux-gnu.so
|
||||
RUN mv _reader.cpython-310-x86_64-linux-gnu.so _reader.cpython-310-aarch64-linux-gnu.so
|
||||
WORKDIR ${TARGET_SYSROOT}/lib/python3.10/site-packages/rosidl_buffer
|
||||
RUN mv _rosidl_buffer_py.cpython-310-x86_64-linux-gnu.so _rosidl_buffer_py.cpython-310-aarch64-linux-gnu.so
|
||||
RUN cd ${TARGET_SYSROOT}/lib/python3.11/site-packages/rclpy \
|
||||
mv _rclpy_pybind11.cpython-311-x86_64-linux-gnu.so _rclpy_pybind11.cpython-311-aarch64-linux-gnu.so
|
||||
RUN cd ${TARGET_SYSROOT}/lib/python3.11/site-packages/rosbag2_py \
|
||||
&& mv _transport.cpython-311-x86_64-linux-gnu.so _transport.cpython-311-aarch64-linux-gnu.so \
|
||||
&& mv _info.cpython-311-x86_64-linux-gnu.so _info.cpython-311-aarch64-linux-gnu.so \
|
||||
&& mv _compression_options.cpython-311-x86_64-linux-gnu.so _compression_options.cpython-311-aarch64-linux-gnu.so \
|
||||
&& mv _storage.cpython-311-x86_64-linux-gnu.so _storage.cpython-311-aarch64-linux-gnu.so \
|
||||
&& mv _reindexer.cpython-311-x86_64-linux-gnu.so _reindexer.cpython-311-aarch64-linux-gnu.so \
|
||||
&& mv _writer.cpython-311-x86_64-linux-gnu.so _writer.cpython-311-aarch64-linux-gnu.so \
|
||||
&& mv _message_definitions.cpython-311-x86_64-linux-gnu.so _message_definitions.cpython-311-aarch64-linux-gnu.so \
|
||||
&& mv _reader.cpython-311-x86_64-linux-gnu.so _reader.cpython-311-aarch64-linux-gnu.so
|
||||
RUN cd ${TARGET_SYSROOT}/lib/python3.11/site-packages/rosidl_buffer \
|
||||
&& mv _rosidl_buffer_py.cpython-311-x86_64-linux-gnu.so _rosidl_buffer_py.cpython-311-aarch64-linux-gnu.so
|
||||
|
||||
FROM ${CC_PLATFORM_IMAGE} AS rmw_zenoh_builder
|
||||
ARG ROS_ROOT
|
||||
@@ -80,7 +82,7 @@ RUN mkdir rmw_zenoh_ws/src -p \
|
||||
&& cd rmw_zenoh_ws/src \
|
||||
&& git clone --depth=1 -b lyrical https://github.com/ros2/rmw_zenoh.git
|
||||
|
||||
ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-none-linux-gnu-gcc
|
||||
ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-buildroot-linux-gnu-gcc
|
||||
|
||||
RUN . "$HOME/.cargo/env" \
|
||||
&& . ${TARGET_SYSROOT}/local_setup.sh \
|
||||
|
||||
Reference in New Issue
Block a user