gpt4 book ai didi

makefile - 在 CMake 中将 'install' 目标添加到 'all'

转载 作者:行者123 更新时间:2023-12-02 20:21:44 24 4
gpt4 key购买 nike

我有一个带有以下目录树的 CMake 项目:

build/
assets/
dest/
<other files>

dest是所有已安装文件应该所在的目录:

  1. 可执行文件,转到 dest/用一个简单的make ,这是由 CMAKE_RUNTIME_OUTPUT_DIRECTORY 控制的

  2. Assets ,位于 assets/ ,转到 dest/make install之后.

但我不想发布make install要复制所有文件,请执行 dest/ dir:我想要一个简单的 make来做到这一点。

从这个意义上说,我该如何添加install目标为默认值 ( all )?或者,有更好的方法来解决这个问题吗?

最佳答案

使用以下内容不会导致递归。需要 CMake >= 3.15。

add_custom_command(
TARGET ${MY_TARGET} POST_BUILD
COMMAND ${CMAKE_COMMAND} --install ${CMAKE_BINARY_DIR} --config $<CONFIG>
)

额外:您可能需要提供默认(本地)安装路径,以便在 Windows 上不会失败。

if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
set(CMAKE_INSTALL_PREFIX "install" CACHE PATH "Default install path." FORCE)
endif()

关于makefile - 在 CMake 中将 'install' 目标添加到 'all',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29064065/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com