diff --git a/doc/build_wamr.md b/doc/build_wamr.md index f57d6678d..039ba4934 100644 --- a/doc/build_wamr.md +++ b/doc/build_wamr.md @@ -527,13 +527,13 @@ able to generate a shared library support Android platform. - look for a command named *sdkmanager* and download below components. version numbers might need to check and pick others - "build-tools;29.0.3" - "cmake;3.10.2.4988404" - - "ndk;21.0.6113669" + - "ndk;latest" - "patcher;v4" - "platform-tools" - "platforms;android-29" - add bin/ of the downloaded cmake to $PATH -- export ANDROID_SDK_HOME=/the/path/of/downloaded/sdk/ -- export ANDROID_NDK_HOME=/the/path/of/downloaded/sdk/ndk/ +- export ANDROID_HOME=/the/path/of/downloaded/sdk/ +- export ANDROID_NDK_LATEST_HOME=/the/path/of/downloaded/sdk/ndk/2x.xxx/ - ready to go Use such commands, you are able to compile with default configurations. Any compiling requirement should be satisfied by modifying product-mini/platforms/android/CMakeList.txt. For example, chaning ${WAMR_BUILD_TARGET} in CMakeList could get different libraries support different ABIs. diff --git a/product-mini/platforms/android/CMakeLists.txt b/product-mini/platforms/android/CMakeLists.txt index b20011023..22db06b03 100644 --- a/product-mini/platforms/android/CMakeLists.txt +++ b/product-mini/platforms/android/CMakeLists.txt @@ -6,9 +6,11 @@ cmake_minimum_required (VERSION 3.4.1) set (CMAKE_VERBOSE_MAKEFILE on) set (CMAKE_BUILD_TYPE Release) -set (CMAKE_TOOLCHAIN_FILE "$ENV{ANDROID_NDK_HOME}/build/cmake/android.toolchain.cmake") -set (ANDROID_NDK $ENV{ANDROID_NDK_HOME}) -set (ANDROID_SDK $ENV{ANDROID_SDK_HOME}) +# https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md#environment-variables-3 +set (CMAKE_TOOLCHAIN_FILE "$ENV{ANDROID_NDK_LATEST_HOME}/build/cmake/android.toolchain.cmake") +set (ANDROID_SDK $ENV{ANDROID_HOME}) +set (ANDROID_NDK $ENV{ANDROID_NDK_LATEST_HOME}) + set (ANDROID_ABI "x86") set (ANDROID_LD lld) if (NOT DEFINED ANDROID_PLATFORM)