11FROM ubuntu:22.04
22
33# Set environment variables for the Android SDK and NDK, and the API level.
4- ENV ANDROID_API_LEVEL="27 "
4+ ENV ANDROID_API_LEVEL="33 "
55ENV ANDROID_NDK_VERSION=r26d
66ENV ANDROID_SDK_ROOT="/usr/lib/android-sdk"
77ENV ANDROID_HOME="/usr/lib/android-sdk"
@@ -66,6 +66,7 @@ RUN find /root/.rustup -name "libcore*.rlib" -path "*android*" -ls
6666RUN echo "=== NDK LIBRARY DEBUG ==="
6767RUN find ${NDK_SYSROOT} -name "libunwind*" -ls
6868RUN ls -la ${NDK_SYSROOT}/usr/lib/aarch64-linux-android/${ANDROID_API_LEVEL} || echo "aarch64 API ${ANDROID_API_LEVEL} library directory not found!"
69+ RUN ls -la ${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android* || echo "No aarch64 linkers found!"
6970
7071# Configure Cargo for Android cross-compilation
7172RUN echo "=== SETTING UP CARGO CONFIG ===" && \
@@ -78,7 +79,7 @@ RUN echo "=== SETTING UP CARGO CONFIG ===" && \
7879 echo '[target.aarch64-linux-android]' > /root/.cargo/config.toml && \
7980 echo "linker = \" $AARCH64_CLANG\" " >> /root/.cargo/config.toml && \
8081 echo "ar = \" $LLVM_AR\" " >> /root/.cargo/config.toml && \
81- echo "rustflags = [\" -C\" , \" link-arg=--sysroot=${NDK_SYSROOT}\" , \" -C\" , \" link-arg=-L${NDK_SYSROOT}/usr/lib/aarch64-linux-android/${ANDROID_API_LEVEL}\" ]" >> /root/.cargo/config.toml && \
82+ echo "rustflags = [\" -C\" , \" link-arg=--sysroot=${NDK_SYSROOT}\" , \" -C\" , \" link-arg=-L${NDK_SYSROOT}/usr/lib/aarch64-linux-android\" , \" -C \" , \" link-arg=-L${NDK_SYSROOT}/usr/lib/aarch64-linux-android /${ANDROID_API_LEVEL}\" ]" >> /root/.cargo/config.toml && \
8283 echo '' >> /root/.cargo/config.toml && \
8384 cat /root/.cargo/config.toml
8485
@@ -98,7 +99,9 @@ RUN echo "=== TESTING WITH RUSTC ===" && \
9899 rustc --target aarch64-linux-android --edition 2021 test.rs \
99100 --sysroot ${NDK_SYSROOT} \
100101 -C linker=${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android${ANDROID_API_LEVEL}-clang \
102+ -C link-arg=-L${NDK_SYSROOT}/usr/lib/aarch64-linux-android \
101103 -C link-arg=-L${NDK_SYSROOT}/usr/lib/aarch64-linux-android/${ANDROID_API_LEVEL} \
104+ -L ${NDK_SYSROOT}/usr/lib/aarch64-linux-android \
102105 -L ${NDK_SYSROOT}/usr/lib/aarch64-linux-android/${ANDROID_API_LEVEL}
103106
104107RUN echo "Test compilation successful!"
0 commit comments