c++ - CMake 仅在重新加载时复制文件,而不是构建

标签 c++ cmake clion

我在 CLion IDE 中使用 CMake,在我的 CMakeLists.txt 中,我使用以下命令将一些资源文件复制到二进制目录中:

file(COPY ${CMAKE_SOURCE_DIR}/res DESTINATION ${CMAKE_BINARY_DIR})

每当我的 CMake 项目在 CLion 中重新加载时,这就会起作用。但是,每当我尝试构建时,都不会再次复制文件。我该如何解决?我使用了错误的命令吗?

最佳答案

使用add_custom_target:

add_custom_target(copy_res_directory ALL
    COMMAND ${CMAKE_COMMAND} -E copy_directory 
        "${CMAKE_SOURCE_DIR}/res" "${CMAKE_BINARY_DIR}/res"
    COMMENT "Copy res directory to build tree"
    VERBATIM)

关于c++ - CMake 仅在重新加载时复制文件,而不是构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28533760/

相关文章:

c++ - 类重载?

c++ - 使用 cmake 制作项目源目录的头文件后代

c++ - 如何从一个配置中排除 CMake 目标?

在 Mac OSX 10.11.6 上找不到 clock_gettime

c++ - 正确设置 bgfx(和项目结构)

c++ - freopen 不适用于 C 标准输入

c++ - 在 C++ 中的链表末尾插入一个节点 (walter/savitch)

c++ - 编辑:填写一列而不覆盖C++中已经存在的内容

Clion 排序包含语句

c++ - 在 C++ 中将负整数转换为二进制字符串