您的位置:首页 > 编程语言 > C语言/C++

C++编译连接总结(三)--cmake

2016-06-24 18:09 176 查看
一般建一个build文件夹,在build同目录下编写CMakeLists.txt文件
在build文件夹下
cmake  ..
make

cmake 加的是CMakeLists.txt的文件的位置
cmake生成部分中间文件和 CMakeCache.txt
执行make时,其当前路径下必须有 Makefile
改动后要make
增加文件后,要cmake  ..

CMakeLists.txt实例

PROJECT(Test)
CMAKE_MINIMUM_REQUIRED(VERSION 2.6)

规定cmake程序的最低版本。这行命令是可选的,我们可以不写这句话,但在有些情况下,如果CMakeLists.txt文件中使用了一些高版本cmake特有的一些命令的时候,就需要加上这样一行,提醒用户升级到该版本之后再执行cmake。
INCLUDE_DIRECTORIES(/usr/include  ${PROJECT_SOURCE_DIR}/include )
头文件路径,告诉编辑器头文件在什么位置
PROJECT_SOURCE_DIR是指工程顶层目录
LINK_DIRECTORIES(/home/lzhy/common/lib ${PROJECT_SOURCE_DIR}/lib )

库文件路径,告诉编辑器去哪里找库文件
AUX_SOURCE_DIRECTORY( ./ DIR_SRCS)
收集目录中的文件名并赋值给变量

ADD_DEFINITIONS(-g)
Debug版会使用参数-g;Release版使用-O3
–DNDEBUG
SET(TMP_SRCS ${DIR_SRCS} )
ADD_EXECUTABLE( Test ${TMP_SRCS} )
编译可执行程序

TARGET_LINK_LIBRARIES(Test myhello)
添加动态库和静态库

其他:
工程名字和代码路径的文件夹名字一致,其导出的文件也必须一致
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: