我以前构建了api级19的arm64-v8alib,使用android.toolchain.cmake随Android r16b,如下所示。
${CMAKE} \
-DCMAKE_TOOLCHAIN_FILE=${TOOLCHAIN_FILE} \
-DANDROID_NDK=$ANDROID_NDK_HOME \
-DANDROID_ABI="arm64-v8a" \
-DANDROID_NATIVE_API_LEVEL="android-19" \
-DANDROID_STL="c++_shared" \
-DANDROID_CPP_FEATURES="rtti exceptions" \
..现在,我想打包我的lib,使用conan,它交叉编译android,使用独立的工具链。使用--arch arm64和--api 19构建独立的工具链似乎是不可能的,因为以下命令
./make_standalone_toolchain.py --arch=arm64 --api=19 --stl=libc++ --install-dir=./test将失败的错误消息:
19小于arm64的最低平台(21)
有办法解决这个问题吗?
发布于 2018-05-14 20:14:40
因为没有API 19 ARM64这样的东西。在android-21中增加了64位支持。
CMake支持这一点,因为我们的工具链文件是根据当时常用的一个流行选项建模的,它就是这样做的。ndk-构建是因为在一次调用中构建了多个ABI。在这两种情况下,构建都会自动将64位目标的API级别提高到21。
独立工具链恰好适用于一种体系结构,因此如果您指定了一个API级别,而该体系结构不支持该级别,则会出现错误,因为这可能是一个错误。
https://stackoverflow.com/questions/49714180
复制相似问题