使用CMake命令编译Android平台下的包

由于Android Studio封装了一些编译的细节,只知道结果但是不知道内部具体做了什么样的操作,所有想具体学习一下

#前言

Android Studio在2.2的版本中引入了Cmake编译,具体的Cmake编译与ndk-build的一些区别可以在网络上搜索

以下是简易编译脚本 每行后要加 \符号链接,不然会commond not found 问题

cmake -H./ -B./build
-DANDROID_ABI=arm64-v8a
-DANDROID_PLATFORM=android-16
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=./build
-DCMAKE_BUILD_TYPE=Debug
-DANDROID_NDK=/Users/jinmingkai/Library/Android/sdk/ndk/21.3.6528147
-DCMAKE_CXX_FLAGS=
-DCMAKE_SYSTEM_NAME=Android
-DCMAKE_ANDROID_ARCH_ABI=arm64-v8a
-DCMAKE_SYSTEM_VERSION=16
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON
-DCMAKE_ANDROID_NDK=/Users/jinmingkai/Library/Android/sdk/ndk/21.3.6528147
-DCMAKE_TOOLCHAIN_FILE=/Users/jinmingkai/Library/Android/sdk/ndk/21.3.6528147/build/cmake/android.toolchain.cmake
-G Ninja
-DCMAKE_MAKE_PROGRAM=/Users/jinmingkai/Library/Android/sdk/cmake/3.10.2.4988404/bin/ninja \

命令的参考博客1
参考博客2
注释:-H SetHomeDirectory 的意思,即sets the source directory for the project

-B 表示sets the binary directory 为 build 目录(若目录不存在,会自动创建)
-G 表示制定makefile生成工具
CMake_TOOLCHAINE_FILE 制定Android编译链

编译完后会在build文件夹生成build.ninja的文件,执行ninja命令,编译完就结束了。
其实ninja执行文件需要加到系统环境中,ninja在/Users/jinmingkai/Library/Android/sdk/cmake/3.10.2.4988404/bin/ninja下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值