vcpkg 编译android库

1. 下载Android NDK ,设置Android NDK 环境变量
export ANDROID_NDK_HOME=/home/your-account/Android/Sdk/ndk-bundle
Or:
export ANDROID_NDK_HOME=/home/your-account/Android/android-ndk-r21b

windows平台直接添加ANDROID_NDK_HOME环境变量

2. 安装vcpkg
https://github.com/microsoft/vcpkg.git

clone后运行bootstrap-vcpkg.bat 编译 vcpkg.exe

3. 导入android配置cmake文件

在triplets/community/ 文件夹下创建以下四个cmake文件

  • arm-android.cmake
set(VCPKG_TARGET_ARCHITECTURE arm)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_CMAKE_SYSTEM_NAME Android)
  • arm64-android.cmake
set(VCPKG_TARGET_ARCHITECTURE arm64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_CMAKE_SYSTEM_NAME Android)
  • x86-android.cmake
set(VCPKG_TARGET_ARCHITECTURE x86)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_CMAKE_SYSTEM_NAME Android)
  • x64-android.cmake
set(VCPKG_TARGET_ARCHITECTURE arm64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_CMAKE_SYSTEM_NAME Android)

至此,配置完成!

4.编译不同平台参考以下命令
VCPKG_TARGET_TRIPLETANDROID_ABI
arm64-androidarm64-v8a
arm-androidarmeabi-v7a
x64-androidx86_64
x86-androidx86
5. 示例

编译不同架构的sqlite3库

  • arm64-v8a
vcpkg install sqlite3:arm64-android --debug //添加--debug能够看到详细的编译信息
  • armeabi-v7a
vcpkg install sqlite3:arm-android 
  • x86_64
vcpkg install sqlite3:x64-android 
  • x86
vcpkg install sqlite3:x86-android 

在 installed\ 目录下能看到编译好的库

6 参考
  • https://vcpkg.readthedocs.io/en/latest/users/android/

  • https://docs.microsoft.com/zh-cn/cpp/build/vcpkg-command-line-reference?view=msvc-160

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

巧笑笑笑倩兮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值