-
-
Save leandrodaher/47ee6e3dc34c63d5f9dacd6b52c9300d to your computer and use it in GitHub Desktop.
Cross compile RUST application for Android (uses standalone toolchains, NDK >= 19 required)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# arm | |
export PATH=$PATH:$HOME/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin | |
export CC=armv7a-linux-androideabi19-clang | |
export CXX=armv7a-linux-androideabi19-clang++ | |
~/.cargo/bin/cargo build --target armv7-linux-androideabi | |
# aarch64 | |
export PATH=$PATH:$HOME/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin | |
export CC=aarch64-linux-android21-clang | |
export CXX=aarch64-linux-android21-clang++ | |
~/.cargo/bin/cargo build --target aarch64-linux-android | |
# x86 | |
export PATH=$PATH:$HOME/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin | |
export CC=i686-linux-android19-clang | |
export CXX=i686-linux-android19-clang++ | |
~/.cargo/bin/cargo build --target i686-linux-android | |
# x86_64 | |
export PATH=$PATH:$HOME/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin | |
export CC=x86_64-linux-android21-clang | |
export CXX=x86_64-linux-android21-clang | |
~/.cargo/bin/cargo build --target x86_64-linux-android | |
################################################################## | |
# All ABIs | |
cargo clean | |
export PATH=$PATH:$HOME/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin | |
export CC=armv7a-linux-androideabi19-clang | |
export CXX=armv7a-linux-androideabi19-clang++ | |
~/.cargo/bin/cargo build --target armv7-linux-androideabi | |
export CC=aarch64-linux-android21-clang | |
export CXX=aarch64-linux-android21-clang++ | |
~/.cargo/bin/cargo build --target aarch64-linux-android | |
export CC=i686-linux-android19-clang | |
export CXX=i686-linux-android19-clang++ | |
~/.cargo/bin/cargo build --target i686-linux-android | |
export CC=x86_64-linux-android21-clang | |
export CXX=x86_64-linux-android21-clang | |
~/.cargo/bin/cargo build --target x86_64-linux-android |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment