Skip to content

Instantly share code, notes, and snippets.

@davidtavarez
Created October 21, 2020 09:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save davidtavarez/885f18cecbf65e0823ad0a9c1077fcf5 to your computer and use it in GitHub Desktop.
Save davidtavarez/885f18cecbf65e0823ad0a9c1077fcf5 to your computer and use it in GitHub Desktop.
Building a Grin++ for Android
git clone https://github.com/GrinPlusPlus/GrinPlusPlus
cd GrinPlusPlus
git checkout android-arm64
vcpkg install --overlay-triplets=vcpkg/custom_triplets --triplet arm64-android-static --debug mio && \
vcpkg install --overlay-triplets=vcpkg/custom_triplets --triplet arm64-android-static --debug libuuid && \
vcpkg install --overlay-triplets=vcpkg/custom_triplets --triplet arm64-android-static --debug fmt && \
vcpkg install --overlay-triplets=vcpkg/custom_triplets --triplet arm64-android-static --debug asio && \
vcpkg install --overlay-triplets=vcpkg/custom_triplets --triplet arm64-android-static --debug zlib && \
vcpkg install --overlay-triplets=vcpkg/custom_triplets --overlay-ports=vcpkg/custom_ports --triplet arm64-android-static --debug minizip && \
vcpkg install --overlay-triplets=vcpkg/custom_triplets --overlay-ports=vcpkg/custom_ports --triplet arm64-android-static --debug secp256k1-zkp && \
vcpkg install --overlay-triplets=vcpkg/custom_triplets --overlay-ports=vcpkg/custom_ports --triplet arm64-android-static --debug rocksdb && \
vcpkg install --overlay-triplets=vcpkg/custom_triplets --overlay-ports=vcpkg/custom_ports --triplet arm64-android-static --debug civetweb && \
vcpkg install --overlay-triplets=vcpkg/custom_triplets --overlay-ports=vcpkg/custom_ports --triplet arm64-android-static --debug roaring && \
vcpkg install --overlay-triplets=vcpkg/custom_triplets --overlay-ports=vcpkg/custom_ports --triplet arm64-android-static --debug libsodium
export NDK=/home/david/Android/Sdk/ndk/canary
export API=29
export TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/linux-x86_64
export TARGET=aarch64-linux-android
export AR=$TOOLCHAIN/bin/$TARGET-ar
export AS=$TOOLCHAIN/bin/$TARGET-as
export CC=$TOOLCHAIN/bin/$TARGET$API-clang
export CXX=$TOOLCHAIN/bin/$TARGET$API-clang++
export LD=$TOOLCHAIN/bin/$TARGET-ld
export RANLIB=$TOOLCHAIN/bin/$TARGET-ranlib
export STRIP=$TOOLCHAIN/bin/$TARGET-strip
rm -Rf /home/david/Projects/GrinPlusPlus/build && mkdir /home/david/Projects/GrinPlusPlus/build && \
cmake -S /home/david/Projects/GrinPlusPlus -B /home/david/Projects/GrinPlusPlus/build -G Ninja \
-D CMAKE_BUILD_TYPE=Release -D GRINPP_TESTS=OFF -D GRINPP_TOOLS=OFF \
-D CMAKE_MAKE_PROGRAM=/home/david/Tools/vcpkg/downloads/tools/ninja-1.10.0-linux/ninja \
-D CMAKE_TOOLCHAIN_FILE=/home/david/Tools/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=arm64-android-static
cmake --build /home/david/Projects/GrinPlusPlus/build
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment