Error Building Multiple Android NDK Target with CMake

Viewed 17

I am trying to build multiple ABI targets with NDK but keeps on getting error below. Where and how do i debug the issue. The error is "could not load cache"

I am using docker from docker-android-ndk and c source

The Error enter image description here

The script file

#!/bin/bash
cd /app
cmake -GNinja -DCMAKE_TOOLCHAIN_FILE=$NDK_ROOT/build/cmake/android.toolchain.cmake -DANDROID_PLATFORM=android-21 /app 
cmake --build /app -v

CMakeLists.txt

cmake_minimum_required(VERSION 3.16)
project(monocypher)

set(MONOCYPHER_SRC_FOLDER "Monocypher/src")

set(MONOCYPHER_SOURCES
    "${MONOCYPHER_SRC_FOLDER}/monocypher.h"
    "${MONOCYPHER_SRC_FOLDER}/monocypher.c"
    "${MONOCYPHER_SRC_FOLDER}/optional/monocypher-ed25519.h"
    "${MONOCYPHER_SRC_FOLDER}/optional/monocypher-ed25519.c"
)


include_directories(${MONOCYPHER_SRC_FOLDER})

include(ExternalProject)

file(TO_CMAKE_PATH "${CMAKE_TOOLCHAIN_FILE}" toolchain_file)


 macro (setup_library library_name android_abi)
    ExternalProject_Add(${library_name}-builder
      SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}"
      BUILD_ALWAYS YES
      DOWNLOAD_COMMAND ""
      INSTALL_COMMAND ""
      UPDATE_COMMAND ""
      PATCH_COMMAND ""
      CMAKE_ARGS
        -DLIBNAME=${library_name}
        -DANDROID_ABI=${android_abi}
        -DCMAKE_FIND_ROOT_PATH=${CMAKE_FIND_ROOT_PATH}
        -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}
        -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}
        -DCMAKE_TOOLCHAIN_FILE=${toolchain_file}
        -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=${CMAKE_BINARY_DIR}/android-build/libs/${android_abi}
        -D${PROJECT_NAME}-MultiBuild=ON
      BUILD_COMMAND
        ${CMAKE_COMMAND} --build . --config Release
    )
   #add_library(monocypher_native SHARED ${MONOCYPHER_SOURCES})
   #set_property(TARGET monocypher_native PROPERTY ENABLE_EXPORTS 1)   
 endmacro()

 setup_library(${PROJECT_NAME}-v8a arm64-v8a ${CMAKE_PREFIX_PATH})

add_library(monocypher_native SHARED ${MONOCYPHER_SOURCES})
set_property(TARGET monocypher_native PROPERTY ENABLE_EXPORTS 1)
0 Answers
Related