从 cpack 组件中删除后缀
Posted
技术标签:
【中文标题】从 cpack 组件中删除后缀【英文标题】:Remove suffix from cpack component 【发布时间】:2018-06-15 09:42:16 【问题描述】:CPack 在此处描述了一个错误,其中单体构建在 DEB 包的 md5sums 文件中包含构建目录路径: https://gitlab.kitware.com/cmake/cmake/issues/16517
由于我在 CMake 3.7 中使用 debian-stretch,因此该错误对我来说仍然存在,因此我正在尝试使用建议的解决方法。
解决方法是像这样启用 CPack 的组件:
set(CPACK_COMPONENTS_ALL component_name)
set(CPACK_DEB_COMPONENT_INSTALL "ON")
但是,问题是当我从mypackage
更改为mypackage-component_name
时,我的包名称发生了变化。
在构建非整体构建时,有没有办法禁止 -component_name
后缀,以便我的用户看不到差异?
【问题讨论】:
【参考方案1】:我找到了解决方案。我们需要设置CPACK_DEBIAN_<component>_PACKAGE_NAME
。在我的情况下<component>=runtime
。
set(CPACK_COMPONENTS_ALL runtime)
set(CPACK_DEB_COMPONENT_INSTALL "ON")
set(CPACK_DEBIAN_RUNTIME_PACKAGE_NAME $CPACK_PACKAGE_NAME)
参考: https://cmake.org/cmake/help/v3.7/module/CPackDeb.html
【讨论】:
以上是关于从 cpack 组件中删除后缀的主要内容,如果未能解决你的问题,请参考以下文章
cmake/cpack 组件 debuginfo rpm 包没有出现