andriod NDK :Google为便于Android开发提供的一种原生开发集(Native Development Kit),可以帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成APK
与NDK密切相关的另一个词汇则是JNI,它是NDK开发中的枢纽
https://www.crifan.com/files/doc/docbook/cross_compile/release/html/cross_compile.html
CMakeLists.txt
CMake:
find_package(XYZ)
: 用来在系统中自动查找配置构建工程所需的程序库
include_directories(${XYZ_INCLUDE_DIRS})
:包括指定XYZ库头文件的查找路径link_directories(${XYZ_LIBRARY_DIRS})
:包含指定XYZ库的.a或.so文件的所在目录的路径.add_executable
生成可执行文件ADD_LIBRARY/ADD_LIBRARY(libname [SHARED | STATIC | MODULE] [EXCLUDE_FROM_ALL] SRC_LIST)
生成动态库或静态库 ,SHARED 动态库,STATIC 静态库TARGET_LINK_LIBRARIES(target lib1 lib2 …)
为target添加需要链接的共享库