cmake命令学习备忘
2016-12-24 21:47
120 查看
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
相关文章推荐
- Linux学习备忘004——文件与目录操作命令
- linux学习与实践(4)--常用命令备忘
- [SQL]mysql命令学习备忘
- PostgreSQL学习笔记2 - 部分命令备忘
- CMake 命令学习
- 学习AIX-lsattr、lsps命令备忘
- CMake学习记录--list(列表操作命令)
- 【Git学习】Git命令备忘
- CMake学习记录--list(列表操作命令)
- cmake常用命令备忘
- MySQL入门学习和常用命令
- vc++学习篇(三)——预处理命令之条件编译(#ifdef,#else,#endif,#if等)
- C++学习的备忘
- RPM命令学习总结
- find命令学习笔记
- 传统网络配置命令与ip高级路由命令学习示例
- Unix学习笔记2--crontab命令
- DB2常用命令学习笔记
- 寒假学习备忘
- 执行数据库命令Command对象——ADO.NET学习&应用笔记之三