miaoxia
V2EX  ›  程序员

Cmake 编译 Android 动态库依赖什么工具?

By miaoxia at 2019 年 6 月 27 日 · 2855 次点击

如果说 NDK + Android.mk/Application.mk 的编译方式是 mk 文件作为配置,依赖 NDK 来编译动态库

而 Cmake 的作用是生成 makefile 文件,那么编译器是什么,gcc 吗?

6 条回复  •  2019-06-27 16:49:07 +08:00
hanxiV2EX
   1
hanxiV2EX  
   2019 年 6 月 27 日 via Android   ❤️ 1
clang 也可以的
henices
   2
henices  
   2019 年 6 月 27 日   ❤️ 1
llvm
SunFarrell
   3
SunFarrell  
   2019 年 6 月 27 日   ❤️ 1
编译器可以选是 gcc 还是 clang,具体还要看你的项目和需求,编译安卓动态库,链接的基础库文件要从 ndk 里 toolchain 里找,不能用其他的,还要注意 ndk 版本,这玩意难不在深度,在流程复杂,广度大,祝好运
waruqi
   4
waruqi  
   2019 年 6 月 27 日 via Android   ❤️ 1
可以换 xmake 试试,不依赖其他什么工具,只需要指定下 ndk 就好,也不用生成 makefile,直接给你编译出 so

xmake f -p android --ndk=xxx

切换到 android 平台后,执行 xmake 编译即可

https://github.com/xmake-io/xmake
miaoxia
   5
miaoxia  
OP
   2019 年 6 月 27 日
@SunFarrell 谢谢兄弟
在写一套很复杂的编译脚本,依赖和嵌套都很深,感觉编译脚本比业务花时间更多😂
mind3x
   6
mind3x  
   2019 年 6 月 27 日
编译器是 NDK 自带的,现在应该只有 clang。gcc 我记得是前两年 NDK 就 deprecated 掉了。
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
© 2026 V2EX · 25ms · 3.9.8.5