4

我还是一个CMake新手(3天前开始学习)。在我当前CMakeLists.txt,我有以下set指令:

[...]
SET(CPACK_GENERATOR "RPM")
SET(CPACK_PACKAGE_VERSION_MAJOR "3")
SET(CPACK_PACKAGE_VERSION_MINOR "3")
SET(CPACK_PACKAGE_VERSION_PATCH "svn")
SET(CPACK_SYSTEM_NAME "0.el6.x86_64")
[...]

一旦我运行make package,我得到了一个libcxx-3.3.svn-0.el6.x86_64.rpm.

但恕我直言,这是“作弊”。

根据http://fedoraproject.org/wiki/Packaging:NamingGuidelines#Package_Naming_and_Versioning_Guidelines,理想情况下我应该能够生成一个libcxx-3.3-0.el6.x86_64.rpm。但这要求CPack不显示CPACK_PACKAGE_VERSION_PATCH

尽管如此,根据我的试验结果,这似乎并不可行。我将不胜感激有关如何的提示。

4

1 回答 1

4

您是否尝试将 CPACK_PACKAGE_FILE_NAME(不带扩展名)设置为所需的名称?提供它是为了在默认值不适合您的需要时,您可以定义自己的包命名方案。有关关键 CPack 变量及其作用的更多详细信息,请参见http://www.cmake.org/Wiki/CMake:CPackConfiguration 。

于 2013-04-07T17:58:55.660 回答