CMakeList.txt文件详解

2020-04-02  本文已影响0人  真胖大海

一.aux_source_directory(. DIR_SRCS)

二.add_library

2.1 添加一个库

image.png

add_library(<name> [STATIC | SHARED | MODULE] [EXCLUDE_FROME_ALL]) source1 source2....sourceN

# 将native-lib.cpp添加为名为native-lib的动态库
add_lib rary( 
             native-lib
             SHARED
             native-lib.cpp )

三.Android 6.0以后导入预编译的库

3.1 添加一个C的动态库
CMAKE_C_FLAGS:是C的参数,表示动态库的位置,会传递给编译器

image.png

3.2 添加一个C++的动态库

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L[SO所在目录]")

四.include_directories

设置头文件目录
include_directories(./include ${MY_INCLUDE})

五.add_executable

设置可执行文件
add_executable(<name> ${SRC_LIST})

六.target_link_libraries

将若干库连接到目标库文件
target_link_libraries(<name> lib1 lib2 lib3)

七.file

file命令

八.多源文件处理

使用aux_source_directory或者file将多个源文件保存到变量中

#查找当前目录所有源文件,不查找子目录
aux_source_directory(. DIR_SRCS)
# 也可以 
# file(GLOB DIR_SRCS *.c *.cpp)

add_library(
    native-lib
   SHARED
   ${DIR_SRCS}
)

一些内置变量

例子
引入so库

上一篇 下一篇

猜你喜欢

热点阅读