Android JNI系列详解之CMake和ndk-build编译工具介绍

一、前提

CMake和ndk-build只是编译工具,本次主要介绍ndk-build和CMake的区别,下节课介绍他们的使用。

二、CMake工具介绍

CMake:cross platform make,是跨平台的编译工具

CMake是在AndroidStudio2.2之后引入(目前默认的NDK编译工具),使用时配合CMakeList.txt和gradle。

对C++的配置:

默认配置了libc++;

默认启用了C++异常;

默认启用了RTTI(运行时类型识别)

三、ndk-build工具介绍

NDK自带脚本工具,主要只能在NDK中使用,配合Android.mk使用,选配(Application.mk或者gradle使用),使用ndk-build通常需要配置环境变量,以方便使用。

对C++的配置:

默认未配置libc++;

默认停用了C++异常;

默认停用了RTTI(运行时类型识别)

相关推荐
我命由我123459 分钟前
Android 开发问题:在无法直接获取或者通过传递获取 Context 的地方如何获取 Context
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
惟恋惜24 分钟前
Jetpack Compose之“副作用”的讲解
android
モンキー・D・小菜鸡儿2 小时前
Android14 新特性与适配指南
android·kotlin·安卓新特性
技术摆渡人2 小时前
Android系统技术探索(1)启动流程
android
介一安全5 小时前
【Frida Android】实战篇12:企业常用对称加密场景 Hook 教程
android·网络安全·逆向·安全性测试·frida
モンキー・D・小菜鸡儿5 小时前
Android15 新特性与适配指南
android·kotlin·安卓新特性
星环处相逢5 小时前
MySQL数据库索引与事务:从基础到实践的全面解析
android
Kin__Zhang5 小时前
随手记录 UE4/CARLA 仿真器 segmentation fault
android·java·ue4
明君879976 小时前
Flutter横向树形选择器实现方案
android·ios
CrazyQ16 小时前
flutter_easy_refresh在3.38.3配合NestedScrollView的注意要点。
android·flutter·dart