栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

C++项目多个cmake学习

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++项目多个cmake学习

cmake学习 最外层CMakeist.txt
cmake_minimum_required(VERSION 3.21)
project(项目名称)

set(CMAKE_CXX_STANDARD 11)

//第三方库动态链接
FIND_PACKAGE(Boost COMPONENTS program_options unit_test_framework atomic system REQUIRED)
link_libraries(/usr/lib/x86_64-linux-gnu/libz.so.1)

//子目录
add_subdirectory(tile)
add_subdirectory(src)
add_subdirectory(test)
tile文件夹CMakeist.txt

target_include_directories

project(名称)


add_library(${PROJECT_NAME}
        xxx.cc
        )
add_library(名称::lib ALIAS ${PROJECT_NAME})//取别名

//头文件
target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR})

src文件夹CMakeist.txt
project(名称)


add_library(${PROJECT_NAME}
        xxx.cc
        )
add_library(名称::lib ALIAS ${PROJECT_NAME})



target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR})

//静态连接库
target_link_libraries(${PROJECT_NAME}
        名称::lib)
test文件夹CMakeist.txt
project(名称)

add_executable(test xx.cc)
add_executable(unit_test xxx.cc)

target_link_libraries(test
        xxx::lib
        xxx::lib
        )

target_link_libraries(unit_test
        xxx::lib
        xxx::lib
        )
github-cmake-examples

中文学习

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/827244.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号