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。

相关推荐
HyperAI超神经1 天前
在线教程丨 David Baker 团队开源 RFdiffusion3,实现全原子蛋白质设计的生成式突破
人工智能·深度学习·学习·机器学习·ai·cpu·gpu
YJlio1 天前
VolumeID 学习笔记(13.10):卷序列号修改与资产标识管理实战
windows·笔记·学习
小龙1 天前
【学习笔记】多标签交叉熵损失的原理
笔记·学习·多标签交叉熵损失
Thera7771 天前
状态机(State Machine)详解:原理、优缺点与 C++ 实战示例
开发语言·c++
linux开发之路1 天前
C++高性能日志库开发实践
c++·c++项目·后端开发·c++新特性·c++校招
知识分享小能手1 天前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04的Linux网络配置(14)
linux·学习·ubuntu
刻BITTER1 天前
在TRAE 上安装PlatformIO
c++·单片机·嵌入式硬件·arduino
永远都不秃头的程序员(互关)1 天前
C++动态数组实战:从手写到vector优化
c++·算法
手揽回忆怎么睡1 天前
Streamlit学习实战教程级,一个交互式的机器学习实验平台!
人工智能·学习·机器学习
xiaoxiaoxiaolll1 天前
《Advanced Materials》基于MXene的复合纤维实现智能纺织品多模态功能集成
学习