Switch RK3576 toolchain to Buildroot SDK and migrate to Python 3.11

This commit is contained in:
EricX-Zhao
2026-07-10 17:08:18 +03:00
parent 877c9c329d
commit 39f628605f
6 changed files with 68 additions and 51 deletions
+10 -7
View File
@@ -13,6 +13,8 @@ RUN cd workspace \
--cmake-args \
--no-warn-unused-cli \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_FLAGS="-Wno-error" \
-DCMAKE_CXX_FLAGS="-Wno-error" \
-DBUILD_TESTING=OFF \
-DCMAKE_TOOLCHAIN_FILE=${CC_TOOLCHAIN_FILE}
@@ -61,7 +63,7 @@ RUN wget https://archives.boost.io/release/1.83.0/source/boost_1_83_0.tar.gz
RUN tar -zxf boost_1_83_0.tar.gz \
&& cd boost_1_83_0 \
&& ./bootstrap.sh --prefix=${TARGET_SYSROOT} --without-libraries=python \
&& sed -i "/using gcc/c using gcc : arm64 : aarch64-none-linux-gnu-gcc ;" project-config.jam \
&& sed -i "/using gcc/c using gcc : arm64 : aarch64-buildroot-linux-gnu-gcc ;" project-config.jam \
&& ./b2 cxxflags="-fPIC" cflags="-fPIC" link=static install
FROM ${CC_PLATFORM_IMAGE} AS pcl_vendor
@@ -74,7 +76,7 @@ COPY vendor/packages/pcl_vendor workspace/src/pcl_vendor
COPY --from=boost ${TARGET_SYSROOT} ${TARGET_SYSROOT}
RUN cd workspace \
&& colcon build \
&& MAKEFLAGS="-j6" colcon build \
--install-base ${TARGET_SYSROOT} \
--merge-install \
--packages-up-to pcl_vendor \
@@ -84,7 +86,6 @@ RUN cd workspace \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_TOOLCHAIN_FILE=${CC_TOOLCHAIN_FILE}
# OpenSSL
FROM ${CC_PLATFORM_IMAGE} AS ssl_builder
WORKDIR /tmp
@@ -152,6 +153,8 @@ RUN ./configure \
# https://github.com/benfogle/crossenv
# cross compile python packages
FROM ${CC_PLATFORM_IMAGE} AS python_pkg_builder
WORKDIR /tmp
COPY vendor/extract_wheels.sh /tmp/extract_wheels.sh
@@ -174,15 +177,15 @@ RUN pip download --no-deps -d /wheels \
RUN pip download \
--no-deps \
--only-binary=:all: \
--python-version 310 \
--python-version 311 \
--implementation cp \
--abi cp310 \
--platform manylinux2014_aarch64 \
-d /wheels \
psutil numpy==1.21.5
psutil
RUN chmod +x /tmp/extract_wheels.sh && \
/tmp/extract_wheels.sh "${TARGET_SYSROOT}/lib/python3.10/site-packages" /wheels
/tmp/extract_wheels.sh "${PYTHON_PKG_PATH}" /wheels
FROM ${CC_PLATFORM_IMAGE} AS final
@@ -190,4 +193,4 @@ COPY --from=system_packages ${TARGET_SYSROOT} ${TARGET_SYSROOT}
COPY --from=ceres_vendor ${TARGET_SYSROOT} ${TARGET_SYSROOT}
COPY --from=opencv_vendor ${TARGET_SYSROOT} ${TARGET_SYSROOT}
COPY --from=pcl_vendor ${TARGET_SYSROOT} ${TARGET_SYSROOT}
COPY --from=python_builder ${TARGET_SYSROOT} ${TARGET_SYSROOT}
COPY --from=python_pkg_builder ${TARGET_SYSROOT} ${TARGET_SYSROOT}