【发布时间】:2017-10-31 10:24:14
【问题描述】:
我使用 CMake 为 Android 构建原生库 .so。我添加了以下内容。
set(CMAKE_SYSTEM_NAME Android)
set(CMAKE_SYSTEM_VERSION 21) # API level
set(CMAKE_ANDROID_ARCH_ABI arm64-v8a)
set(CMAKE_ANDROID_NDK /path/to/android-ndk)
set(CMAKE_ANDROID_STL_TYPE gnustl_static)
但是,运行 make 时,我得到了 #include <android/log.h> 未找到的错误。我猜想前面的set() 命令可能包含了像android/log.h 这样的NDK 库和头文件,但显然不是这样。在 CMake 中包含 NDK 提供的头文件和库的最佳方法是什么?
【问题讨论】:
-
你是把
/path/to/android-ndk换成CMAKE_ANDROID_NDK,还是把正确的路径放到机器上NDK 的位置? -
放了我系统中的实际路径。
标签: android c++ cmake android-ndk java-native-interface