cmake命令学习备忘

cmake是编译c、c++的工具。将主要的命令作以下记录,一来加深印象,二来备忘。

================================================================
1、#是注释符号

2、SET(变量A 变量B)
例如
SET(SRC_LIST a.c b.c ab.c)
意思是将a.c b.c ab.c三个文件作为一个list赋值给SRC_LIST,也可以
set(SRC a.c )
意思是将a.c赋值给SRC,可以通过${SRC}来得到a.c。命令不分大小写。

3、判断
if(1)
SET(SRC a.c )
elseif(1)
SET(SRC b.c )
endif()

4、循环
SET(mylist “a” “b” c “d”)
foreach(f ${mylist})
message(“1+1=2”)
endforeach()

WHILE(1)
message(${mylist})
ENDWHILE()

5、project(hello)
指定项目名称

6、include_directories(directory1 directory2 …)
指定头文件的搜索路径,不执行

7、link_directories(directory1 directory2 …)
指定库文件的搜索路径,不执行

8、add_subdirectory()
包含子目录

9、add_executable(可执行文件名 生成该可执行文件的源文件)
执行编译
add_executable(aaa ${mylist })
生成名称为aaa的可执行文件

10、target_link_libraries(f1 f2)
执行链接
TARGET_LINK_LIBRARIES(aaa bbb)
aaa连接libbbb.so库

11、add_library(directory1 directory2 …)
编译成库文件
ADD_LIBRARY(aaa SHARED ${mylist})
生成名称为aaa的动态链接库

ADD_LIBRARY(aaa STATIC ${mylist})
生成名称为aaa的静态链接库

12、aux_source_directory(dir variable)
将dir中的所有源文件(不包括头文件)保存到variable中

13、MESSAGE()
打印信息

14、add_definitions()
增加编译参数

15、内部变量
CMAKE_C_COMPILER:指定C编译器
CMAKE_CXX_COMPILER:
EXECUTABLE_OUTPUT_PATH:可执行文件的存放路径
LIBRARY_OUTPUT_PATH:库文件路径
CMAKE_BUILD_TYPE::build 类型(Debug, Release, …),CMAKE_BUILD_TYPE=Debug

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值