CMake构建学习笔记12-libzip库的构建

如果要更方便地压缩/解压缩文件或者文件夹,除了使用基于zlib的minizip库,更推荐使用另一个基于zlib的库libzip,个人认为其接口设计更科学一点,文档也更丰富一点。不过libzip库本身的构建倒是没什么特别的,关键指令如下所示:

shell 复制代码
# 配置CMake  
cmake .. -G "$Generator" -A x64 `
    -DCMAKE_BUILD_TYPE=RelWithDebInfo `
    -DCMAKE_PREFIX_PATH="$InstallDir" `
    -DCMAKE_INSTALL_PREFIX="$InstallDir" `
    -DBUILD_DOC=OFF `
    -DBUILD_EXAMPLES=OFF `
    -DBUILD_REGRESS=OFF `
    -DENABLE_OPENSSL=OFF

# 构建阶段,指定构建类型
cmake --build . --config RelWithDebInfo

# 安装阶段,指定构建类型和安装目标
cmake --build . --config RelWithDebInfo --target install

其中,设置CMAKE_PREFIX_PATH能够保证能够正确找到安装在这么目录下的zlib,而BUILD_DOC、BUILD_EXAMPLES、BUILD_REGRESS和ENABLE_OPENSSL都是笔者认为无关紧要的配置项,故设置为OFF。

相关推荐
zdr尽职尽责几秒前
Untiy 处理Aseprite 资产 解决偏移问题
学习·unity·c#·游戏引擎
菜菜的顾清寒3 分钟前
C++面试题自用-持续更新
开发语言·c++
t***5449 分钟前
如何在 Dev-C++ 中使用 Clang 调试
开发语言·c++
c++之路11 分钟前
C++ 重载函数、运算符重载、抽象类(接口)
开发语言·c++
slb19062315 分钟前
mongo数据库基础语法学习
数据库·学习
汉克老师18 分钟前
GESP2023年6月认证C++三级( 第三部分编程题(1、春游))
c++·数组·计数·gesp三级·gesp3级
牛八里昂22 分钟前
DeepAgents 学习
学习
aq553560025 分钟前
Laravel8.x新特性全解析
c++·elasticsearch·mfc
我星期八休息29 分钟前
Linux 进程核心原理全解:从冯诺依曼体系到进程控制全链路深度剖析
大数据·linux·服务器·开发语言·数据结构·c++·散列表
Cando学算法32 分钟前
回声服务器项目
linux·开发语言·c++·计算机网络·ubuntu