一、准备
1.1 源代码文件
- C/C++源代码文件
1.2 CMake工具
- 要配置环境变量
-
CMakeLists.txt文件
1.3 NDK
-
要配置环境变量
1.4 Ninja
-
这里被包含在CMake中。其实Ninja是一个独立的编译工具。
二、操作
2.1
- 在CMakeLists.txt文件所在的目录中,新建一个临时文件夹,比如命名为tmp。在tmp目录中打开CMD命令行窗口。输入如下命令
- 命令1:构建源文件
命令解释:cmake构建工具根据当前目录下的CMakeLists.txt文件中申明的逻辑,使用ninja编译工具和ndk,将CMakeLists.txt文件中申明的所有源文件进行编译。Ninja使用了NDK,NDK在CMakeLists.txt中被指定。
-GNinja中的G,指的是Generate。
-DTARGET_ABI,指的是Define。
cmake .. -GNinja -DTARGET_ABI=armeabi
- 命令2:生成armeabi的动态库
本条命令执行完毕后,会输出文件名为libxxx.so的文件。xxx的具体字面量在CMakeLists.txt中指定。
ninja