如何更改使用 CPack 安装的可执行文件的名称?
How do I change the name of the executable that I'm installing using CPack?
如果这听起来像是微不足道的事情,我确实提前道歉。我是使用CMake和CPack的新手。
我目前正在尝试构建自己的编译器作为副项目,我想测试 CPack 将如何安装我的项目。
这是我的CMakeLists.txt文件,我位于项目文件夹的根目录中:
cmake_minimum_required(VERSION 3.15)
project(Simple-C-Compiler VERSION 0.01)
set(CMAKE_CXX_STANDARD 20)
set(COMPILER_VERSION ${PROJECT_VERSION})
add_library(include INTERFACE)
target_include_directories(include INTERFACE include/)
add_subdirectory(lib)
add_subdirectory(phases)
add_subdirectory(compiler)
add_subdirectory(tests)
target_link_libraries(compiler lexer)
target_link_libraries(tester lexer)
add_compile_options(-Wall)
install(TARGETS compiler DESTINATION bin)
set(CPACK_PACKAGE_EXECUTABLES "compiler" "Simple-C")
include(CPack)
当我尝试安装编译器时,请执行以下操作:
mkdir build
cd build
cmake ../
make install
我得到以下输出:
[ 22%] Built target lib
[ 55%] Built target lexer
[ 77%] Built target compiler
[100%] Built target tester
Install the project...
-- Install configuration: ""
-- Installing: /usr/local/bin/compiler
CPack 将我的编译器安装为"编译器"而不是"Simple-C"。我希望正在安装的可执行文件的名称为"Simple-C"。如何在我的 CMakeLists.txt 文件中执行此操作?
您可以使用以下命令更改目标的名称:
set_target_properties(compiler PROPERTIES OUTPUT_NAME Simple-C)
这必须在add_subdirectory(compiler)
之后调用
作为旁注,您提到的命令没有调用 cpack。为了调用 cpack,您需要运行 cpack 命令。
您可以使用CMakeinstall
的RENAME
选项。请参阅 https://cmake.org/cmake/help/v3.13/command/install.html
总之
install(TARGETS compiler DESTINATION bin RENAME Simple-C)
相关文章:
- 如何将不同的可执行文件合并到一个窗口框架中进行编码?像浏览器一样
- 如何使 windows 命令提示符在C++可执行文件上显示返回值?
- CMake:如何将库 A 链接到库 B,然后将可执行文件链接到库 A
- 如何使字符串出现在编译的二进制可执行文件的开头?
- 程序在使用 system() 启动另一个可执行文件时停止
- 如何更改使用 CPack 安装的可执行文件的名称?
- 在Linux上使用Clang / OLLVM交叉编译helloworld Windows可执行文件时的问题
- CMake:我们可以为一组不形成可执行文件或库的特定文件指定包含目录吗?
- 如何将图像传入C++可执行文件并将输出图像存储在新目录中?
- 共享库 (.so) 没有扩展名的 Linux 可执行文件之间的区别?
- 如何在 linux 可执行文件中使用静态库
- 错误:当我从"WinDbg"打开可执行文件时,找不到符号文件。默认导出 ntdll 的符号.dll
- 编译的C可执行文件被Windows defender检测为病毒
- C++ Linux 在部署环境中安装可执行文件
- 安装程序如何将文件合并到可执行文件中
- 创建不需要任何进一步安装即可在其他计算机上工作的可执行文件?
- 新安装的MinGW问题与编译和可执行文件
- 未安装的 Gurobi 机器中的 Gurobi 可执行文件
- C++ WinAPI - 如何从可执行文件的名称中获取其安装路径
- 使用qmake安装文件:如何获取可执行文件