CLion如何将资源文件移动到构建目录中

Bra*_*ean 4 cmake clion

project(Brendan-C-SFML)
cmake_minimum_required(VERSION 2.8)

set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "$ENV{SFML_ROOT}/cmake/Modules")

find_package(SFML REQUIRED COMPONENTS main system window graphics audio)

add_executable(Brendan-C-SFML brendan-c.cpp)

target_include_directories(Brendan-C-SFML PRIVATE ${SFML_INCLUDE_DIR})
target_link_libraries(Brendan-C-SFML ${SFML_LIBRARIES})
Run Code Online (Sandbox Code Playgroud)

我有一个share文件夹,它应该在同一个目录中,Brendan-C-SFML.exe但是CLion构建了源代码,因此share无法访问.有没有办法将CLion设置为复制share到构建目录?

小智 6

将以下行添加到您的结尾CMakeLists.txt.

file(COPY share DESTINATION ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
Run Code Online (Sandbox Code Playgroud)

尝试重新加载cmake配置,以防副本不起作用.使用File -> Reload CMake Project重新加载cmake的配置.

  • 对我来说,它是`$ {CMAKE_BINARY_DIR}`而不是`$ {CMAKE_RUNTIME_OUTPUT_DIRECTORY}`(在MacOS上) (3认同)
  • Windows 上的 ${CMAKE_BINARY_DIR} 也是如此。 (2认同)