CmakeList.txt快速入门

2.CmakeList.txt文件详解

CMakeLists.txt 简析

使用AndroidStudio3.4创建一个C/C++项目,默认在app/src/main下生成cpp目录,其中有一个CMakeLists.txt和native-lib.cpp。
看一下CMakeLists.txt中中的内容,去掉注释

cmake_minimum_required(VERSION 3.4.1)
add_library( 
        native-lib
        SHARED
        native-lib.cpp)
find_library( 
        log-lib
        log)
target_link_libraries( # Specifies the target library.
        native-lib
        ${log-lib})

常用的配置命令

cmake_minimum_required、

cmake_minimum_required(VERSION 3.4.1)

cmake_minimum_required这个代表最低的支持版本,可以不加。这样就使用默认的版本,如果想使用高版本的api,这个是必须加上的。

aux_source_directory

aux_source_directory(. DIR_SRCS)

作用和注意点

  1. 查找当前目录所有源文件,并将源文件名称列表保存到DIR_SRCS变量
  2. 不能查找子目录

常用命令

add_library

添加一个库

add_library(<name> [ STATIC | SHARED |MODULE]  [EXCLUDE_FROM_ALL]  source1 source2 ... sourceN)
  1. 添加一个库文件,名字叫
  2. 指定STATIC,SHARED,MODULE参数来指定库的类型。STATIC:静态库;SHARED:动态库,MODULE:在使用dyld的系统有效,若不支持dyld,等同于SHARED
  3. EXCLUDE_FROM_ALL:表示该库不会被默认构建
  4. source1 source2 … sourceN :用于指定库的原文件

导入预编译的库

  1. 添加一个已存在的预编译库,名为
  2. 一般配合set_target_properties使用
add_library(<name> <SHARED|STATIC|MODULE|UNKNOEN> IMPORTED)

# 比如

add_library(test SHARED IMPORTED)

set_target_properities(
    test   # 指定目标库名
    PROPERTIES IMPORTED_LOCATION  # 指定要设置的参数库路径/${ANDROID_ABI}/libtest.so  #导入库的路径
    
)

set

设置CMake的变量

# 设置可执行文件的输
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值