cmake项目安装和打包
发表于:2024-12-23 | 分类: C++ cmake
字数统计: 285 | 阅读时长: 1分钟 | 阅读量:

cmake项目安装和打包

install

语法

cmake install 用于把编译好的程序头文件、配置文件等安装到系统的指定目录中

1
2
3
4
5
6
7
8
9
10
11
12
13
# 安装可执行文件
install(TARGETS MyApp RUNTIME DESTINATION bin)

# 安装库文件
install(TARGETS MyLibrary
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib)

# 安装头文件
install(FILES include/MyLibrary.h DESTINATION include)

# 安装其他文件(如配置文件)
install(FILES config/myconfig.cfg DESTINATION etc)

案例

使用我们之前的LOG静态库,子CMakeLists.txt添加安装

1
2
3
4
5
6
7
8
9
# 创建静态库
add_library(MyLOG_LIB STATIC log.cpp)

# 添加头文件搜索路径
target_include_directories(MyLOG_LIB PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})

# 安装静态库
install(TARGETS MyLOG_LIB
ARCHIVE DESTINATION lib) # 静态库安装到 xxx/lib 目录

执行命令

1
2
3
4
5
6
7
8
# 构建
cmake -S . -B build

# 编译
cmake --build build

# 安装
cmake --install build --prefix /usr

最终会被安装到/user/lib

cpack

  • 可以直接打包,也可以添加打包信息后打包
  • 打包信息(如维护人、版本、证书等)可以直接写在主CMakeLists.txt后面

进入build执行cpack

  • 生成了sh和其他类型打包文件
  • 以sh为例,运行它会解压在MyProject-0.1,1-Linux/binMyApp就是可执行文件

上一篇:
cmake搭建QT开发环境
下一篇:
cmake基本语法