CMake 入门
2015-06-13 12:48
218 查看
编写 CMakeLists.txt
首先编写 CMakeLists.txt 文件,并保存在与 main.cc 源文件同个目录下:
# 单个源文件
# CMake 最低版本号要求 cmake_minimum_required (VERSION 2.8) # 项目信息 project (Demo1) # 指定生成目标 add_executable(Demo main.cc)
CMakeLists.txt 的语法比较简单,由命令、注释和空格组成,其中命令是不区分大小写的。符号
#后面的内容被认为是注释。命令由命令名称、小括号和参数组成,参数之间使用空格进行间隔。
对于上面的 CMakeLists.txt 文件,依次出现了几个命令:
cmake_minimum_required
:指定运行此配置文件所需的 CMake 的最低版本;project
:参数是main
,该命令表示项目的名称是 main 。add_executable
: 将名为 main.cc 的源文件编译成一个名称为 Demo 的可执行文件。
# 同一目录,多个源文件
# CMake 最低版本号要求 cmake_minimum_required (VERSION 2.8) # 项目信息 project (Demo2) # 查找当前目录下的所有源文件 # 并将名称保存到 DIR_SRCS 变量 aux_source_directory(. DIR_SRCS) # 指定生成目标 add_executable(Demo ${DIR_SRCS})
aux_source_directory: 将当前目录所有源文件的文件名赋值给变量
DIR_SRCSadd_executable: 指示变量
DIR_SRCS中的源文件需要编译成一个名称为 Demo 的可执行文件。
# 多个目录,多个源文件
# 根目录中的 CMakeLists.txt : # CMake 最低版本号要求 cmake_minimum_required (VERSION 2.8) # 项目信息 project (Demo3) # 查找当前目录下的所有源文件 # 并将名称保存到 DIR_SRCS 变量 aux_source_directory(. DIR_SRCS) # 添加 math 子目录 add_subdirectory(math) # 指定生成目标 add_executable(Demo main.cc) # 添加链接库 target_link_libraries(Demo MathFunctions) # 子目录中的 CMakeLists.txt: # 查找当前目录下的所有源文件 # 并将名称保存到 DIR_LIB_SRCS 变量 aux_source_directory(. DIR_LIB_SRCS) # 生成链接库 add_library (MathFunctions ${DIR_LIB_SRCS})
add_subdirectory:指明本项目包含一个子目录 math, math 目录下的 CMakeLists.txt 文件和源代码也会被处理
target_link_libraries:指明可执行文件 main 需要连接一个名为 MathFunctions 的链接库
add_library:将 src 目录中的源文件编译为静态链接库
相关文章推荐
- minigui代码分析
- Xcode 6 下添加pch头文件
- 用于列出文件目录的java实用小程序,方便文件查找
- Maven学习(十一)----Maven深入学习(一)- 坐标
- AutoTest--HTML/XML/XPath基础及辅助工具
- 网络层协议:IP(Internet Protocol)的分类与子网
- Win10 开发资源
- vim
- error: only position independent executables (PIE) are supported.
- eclipse中设置@author为自己的名字
- 多行文本溢出显示省略号(…)全攻略
- hdu 5225 Tom and permutation
- Exchange Server 2010跨站点部署以及升级到Exchange Server 2013博文目录--持续更新
- MyEcplise8.5 Patch
- 栈与队列,小猫钓鱼
- Java中获取文件大小的正确方法
- 图片缓存框架解析与设计
- OSGI学习(1) - HelloWorld
- androi实现自定义标题栏、自定义光标
- 高性能JavaScript