c++ - CMake : How to change default package name using CPack - linux

标签 c++ linux cmake package cpack

在我的项目中,我创建了两个包。

  1. 包含除“XYZ”模块之外的所有组件的默认包。
  2. 使用 COMPONENT <XYZ> 包含 XYZ 组件的特定包在 INSTALL命令。

现在,问题是,我指定了 CPACK_SOURCE_PACKAGE_FILE_NAME当我运行 make package命令其生成两个包,名称如下所示。

set(CPACK_SOURCE_PACKAGE_FILE_NAME "AB-1.0.2")在 CMakeList.txt 中

make package

然后输出是:

CPack: Create package
CPack: - package: /home/build/AB/AB-1.0.2-Unspecified.tar.bz2 generated.
CPack: - package: /home/build/AB/AB-1.0.2-XYZ.tar.bz2 generated.

我想更改默认包名称以及第二个包名称。

我用谷歌搜索但无法找到指定默认包名称或重命名此包的任何直接方法。

提前致谢。

最佳答案

您可以使用 CPACK_PACKAGE_FILE_NAME 变量更改文件名 CPACK_SOURCE_PACKAGE_FILE_NAME 仅在您运行时参与

make package_source

编辑

您还可以选择通过设置 CMAKE 变量 CMAKE_INSTALL_DEFAULT_COMPONENT_NAME 来更改默认组件名称

看看这个http://www.cmake.org/cmake/help/v3.0/command/install.html

关于c++ - CMake : How to change default package name using CPack - linux,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28737751/

相关文章:

ruby-on-rails - 如何在系统重启后在用户环境中自动启动rails应用程序?

cmake - 当目标位于子目录中时,替代 CMake POST_BUILD 命令

linux - shm_open 未设置组写访问权限

visual-studio - CMake 如何为 Visual Studio 2015 项目指定 "Platform Toolset"?

c++ - 使用 CMake 查找 Direct3D 12

c++ - decltype(void()) 中的 void() 究竟是什么意思?

c++ - 为字符分配数字 C++

c++ - char* p=NULL, cout<<p;给出异常(exception)

c++ - C++ 中的小 double 值和大 double 值 : which are more precise?

linux - 当定界符也出现在文件中任何位置的字段数据中时,如何替换定界符?