CMake使用技巧集

简介: CMake使用技巧集.txt 1、注意CMake不允许出现相同的目标名称,即使是不同的目录下的CMakeLists.txt 2、将头文件搜索路径插入到其它的前面: include_directories(BEFORE /tmp) 当使用CMake的include复用规则时,如果想让某头文件路径至于其它的前面,则需要指定BEFORE,否则/tmp将位于其它的后面。
img_e25d4fb2f8de1caf41a735ec53088516.pngCMake使用技巧集.txt

1、注意CMake不允许出现相同的目标名称,即使是不同的目录下的CMakeLists.txt


2、将头文件搜索路径插入到其它的前面:
include_directories(BEFORE /tmp)
当使用CMake的include复用规则时,如果想让某头文件路径至于其它的前面,则需要指定BEFORE,否则/tmp将位于其它的后面。
类似BEFORE的取值,还有:AFTER和SYSTEM,详情可参见CMake的官方说明:https://cmake.org/cmake/help/v3.0/command/include_directories.html。


3、阻止为动态库添加前缀和后缀
add_library(hello.fcgi SHARED hello.cpp)
# 阻止cmake自动添加lib前缀和so后缀
set_target_properties(hello.fcgi PROPERTIES PREFIX "" SUFFIX "")
如果不调用set_target_properties,则生成的文件名为libhello.fcgi.so,而不是期望的hello.fcgi。


后续补充。。。

相关文章
|
4天前
|
存储 自然语言处理 Linux
CMake基础(1)初识CMake
CMake基础(1)初识CMake
17 0
|
8月前
|
C++
CMake中使用vcpkg
vcpkg是一个微软开源的C++包管理器。 在以前的开发中,如果在项目中需要使用某个开源库,例如qt,我们需要取官网下载qt的源码,然后构建得到对应的库,然后在项目中链接这个库。对于自己熟悉的库还好说,若是不熟悉的库,如何拉取源码?如何构建?如何在项目中引用?等等这些问题通常会困扰我们,然而,大多数情况下,我们只是使用这个开源库,并不需要关心这个库的构建和编译等问题。如此,在以前的开发过程中,往往会花费不少的时间在引入开源库上。 vcpkg是在背景下开发出来的,通过vcpkg,我们可以在项目中很方便的引入开源库,不用再关心拉取代码、构建开源库的这些事情。 CMake构建的项目中引入开源库
114 0
|
Linux 异构计算
|
IDE 编译器 开发工具
CMake教程1:CMake是什么?
CMake教程1:CMake是什么?
113 0
|
C++
cmake安装与使用
cmake安装与使用
263 0
cmake安装与使用
|
Ubuntu
CMake
CMake
107 0
|
消息中间件 关系型数据库 C语言
|
Java Linux C语言
|
Linux 前端开发 关系型数据库