CMakeList 配置ndk编译app
时间: 2023-07-11 19:54:48 浏览: 185
Ndk学习的最新demo基于CMakeLists
在 CMakeList 中配置 ndk 以编译 app 的步骤如下:
1. 首先,需要在 CMakeList 中指定编译的最小版本:
```
cmake_minimum_required(VERSION 3.4.1)
```
2. 然后,需要定义项目名称和版本:
```
project(MyProject VERSION 1.0)
```
3. 接下来,需要设置编译选项:
```
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall")
```
4. 指定编译的目标平台和架构:
```
set(ANDROID_ABI armeabi-v7a)
set(ANDROID_PLATFORM android-21)
```
5. 设置编译所需的头文件和库文件路径:
```
include_directories(${CMAKE_SOURCE_DIR}/src/main/cpp/include)
link_directories(${CMAKE_SOURCE_DIR}/src/main/cpp/libs/${ANDROID_ABI})
```
6. 添加需要编译的源文件:
```
add_library(
MyLibrary
SHARED
src/main/cpp/mylibrary.cpp
)
```
7. 最后,指定需要链接的库文件:
```
target_link_libraries(
MyLibrary
android
log
mylib
)
```
其中,`android` 和 `log` 是系统库,`mylib` 是自己编写的库文件。
完整的 CMakeList 示例:
```
cmake_minimum_required(VERSION 3.4.1)
project(MyProject VERSION 1.0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall")
set(ANDROID_ABI armeabi-v7a)
set(ANDROID_PLATFORM android-21)
include_directories(${CMAKE_SOURCE_DIR}/src/main/cpp/include)
link_directories(${CMAKE_SOURCE_DIR}/src/main/cpp/libs/${ANDROID_ABI})
add_library(
MyLibrary
SHARED
src/main/cpp/mylibrary.cpp
)
target_link_libraries(
MyLibrary
android
log
mylib
)
```
阅读全文