当前位置:网站首页>CMake教程Step7(安装打包)
CMake教程Step7(安装打包)
2022-08-06 17:01:00 【开始沸腾了】
CMake官方文档
参考官方cmake3.24教程翻译。我这里使用cmake 3.16来演示例子。 step7
https://cmake.org/cmake/help/v3.24/guide/tutorial/index.html
接下来,假设我们希望将我们的项目分发给其他人,以便他们可以使用它。我们希望在各种平台上同时提供二进制和源代码发行版。
这与我们之前(cmake教程Step4 中)所做的安装有一点不同,在那里我们只安装了从源代码构建的二进制文件。
在本例中,我们将构建支持二进制安装和包管理特性的安装包。为此,我们将使用CPack创建特定于平台的安装程序。特别地,我们需要在顶级CMakeLists.txt文件的底部添加几行。
include(InstallRequiredSystemLibraries)
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/License.txt")
set(CPACK_PACKAGE_VERSION_MAJOR "${Tutorial_VERSION_MAJOR}")
set(CPACK_PACKAGE_VERSION_MINOR "${Tutorial_VERSION_MINOR}")
set(CPACK_SOURCE_GENERATOR "TGZ")
include(CPack)
这就是全部。我们从包括InstallRequiredSystemLibraries开始。
此模块将包括项目当前平台所需的任何运行时库。
接下来,我们设置一些CPack变量,用于存储这个项目的许可证和版本信息。
版本信息在本教程的前面已经设置,License.txt已经包含在此步骤的顶级源目录中。CPACK_SOURCE_GENERATOR变量为源包选择一种文件格式。
最后,我们包含了CPack模块,它将使用这些变量和当前系统的一些其他属性来设置安装程序。
下一步是按照通常的方式构建项目,然后运行cpack可执行文件。要构建一个二进制发行版,从二进制目录运行:
cpack
要指定生成器,请使用-G选项。对于多配置构建,使用-C来指定配置。例如:
cpack -G ZIP -C Debug
有关可用生成器的列表,请参阅cpack-generators(7)或调用cpack --help。
像ZIP这样的存档生成器会创建所有已安装文件的压缩存档。
要创建完整源代码树的存档,你可以输入:
cpack --config CPackSourceConfig.cmake
或者,运行make package或右键单击package目标并从IDE构建项目。
运行在二进制目录中找到的安装程序。然后运行安装的可执行文件并验证它是否有效。
边栏推荐
- 怎么解除谷歌浏览器的防火墙 如何关闭防火墙对chrome浏览器的拦截
- QWT下载、安装、配置教程
- C专家编程 第7章 对内存的思考 7.7 总线错误
- 快充充电器 多口快充协议芯片
- 笔记本win11怎么退回win10(适用联想、华为、小米、戴尔)
- win7网络出现感叹号一步搞定 win7网络黄色感叹号
- JVM:(四)运行时数据区之程序计数器
- Machine Learning: How to implement undersampling and oversampling?How to install imlearn?
- What software is cdr? What software does cdr format use?
- appcrash事件怎么解决win7 win7系统修复appcrash
猜你喜欢

MT6853/MT6873 视频彩铃概率性无图像

3D感知(一):初步认识

Ali, phoenix architecture have to pay first book guide to build large-scale distributed systems so precious

bin文件用什么软件打开 如何打开bin文件格式

win7无u盘重置开机密码 win7忘记密码怎么重置电脑密码

数字化转型要避免“唯技术论”!
The JVM: (3) the runtime data area

how to unblock google browser firewall how to disable firewall blocking chrome browser

JVM: (4) Program counter in runtime data area

FP6601AP5 CPC-16L Type-A HVDCP控制器与插入/输出自动检测
随机推荐
赞!图像几何三维重建代码实战教程来啦!深度计算+点云处理+网格重建优化+纹理贴图!
Windows 7 input method is missing how to adjust out Windows 7 input method icon is missing
win7启动项设置在哪 win7关闭开机启动项怎么设置
tmux 使用教程
win7无线网络列表显示不出来 win7网络连接图标不见了怎么办
win7输入法不见了怎么调出来 win7输入法图标不见了
Computational Protein Design with Deep Learning Neural Networks
为什么欧美地区,都认为百度SEO就是首页排名?
dedecms proves that the next article on the mobile station has changed to the previous one and there is an error Request Error!
win7网络出现感叹号一步搞定 win7网络黄色感叹号
Common gadgets of shell (sort, uniq, tr, cut)
win7资源管理器反复停止工作 win7资源管理器已停止工作不断重复
win7激活密钥大全2021 win7最新激活密钥
王学岗——钉钉视频会议实战,从零手写音视频会议项目
已解决ValueError: document with multiple roots
C专家编程 第7章 对内存的思考 7.7 总线错误
shell之常用小工具(sort、uniq、tr、cut)
电脑系统怎么重装win7u盘启动 台式笔记本电脑重装win7步骤
win7旗舰版强行删除开机密码 win7开机密码忘了怎么解除
为什么企业不愿意升级ERP系统