CMake使用总结,不断更新

使用C++11

CMake 3.1或者更高版本

set(CMAKE_CXX_STANDARD 11)

更低版本

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

生成可执行文件

set(SOURCE_FILES
        main.cpp
        xxx.cpp)
        
add_executable(project_name ${SOURCE_FILES})

这里的SOURCE_FILES是源文件列表

生成动态链接库

# 需要打入动态链接库的源文件
set(SOURCE_FILES_FOR_SHARED
        aaaa.cpp
        bbbb.cpp)
        
# add_library(library-name SHARED ${SOURCE_FILES_FOR_SHARED})

注意,在MacOS生成的是.dylib文件,在Linux上生成的是.so文件,在windows中是.dll

连接三方库

首先设置动态链接库的目录,以及头文件目录

set(INC_DIR include)
set(LINK_DIR lib)

加入头文件目录、库所在目录、库名称

include_directories(${INC_DIR})
link_directories(${LINK_DIR})
link_libraries(library_name)

以上这两个应该在add_executable之前设置好

add_executable之后,还需要在连接动态库

target_link_libraries(project_name library_name)

完成之后,cmake代码如下:

cmake_minimum_required(VERSION 3.6)
project(project_name)
 
set(CMAKE_CXX_STANDARD 11)
 
set(SOURCE_FILES main.cpp)
 
set(INC_DIR include)
set(LINK_DIR lib)
 
include_directories(${INC_DIR})
link_directories(${LINK_DIR})
link_libraries(library_name)
 
add_executable(project_name ${SOURCE_FILES})
target_link_libraries(project_name library_name)
  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值