Ich versuche ein einfaches Projekt auf CLion zu erstellen. Es benutzt CMake (ich bin neu hier), um Makefiles zu erzeugen, um Projekt (oder eine Art davon) zu erstellenCMake: Datei vom Quellverzeichnis in das Binärverzeichnis kopieren
Alles, was ich brauche, ist einige Nicht-Projekt-Datei (irgendeine Art von Ressourcendatei) in Binärverzeichnis jedes Mal zu übertragen wenn ich meinen Code ausführe.
Diese Datei enthält Testdaten und Anwendung öffnen sie, um sie zu lesen. Ich habe versucht, mehrere Möglichkeiten, dies zu tun:
Via
file(COPY ...
file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/input.txt DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/input.txt
gut aus, sondern es nur einmal arbeiten und nicht Datei nach dem nächsten Lauf recopy.
Via
add_custom_command
OUTPUT
Versionadd_custom_command( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/input.txt COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/input.txt ${CMAKE_CURRENT_BINARY_DIR}/input.txt)
TARGET
Versionadd_custom_target(foo) add_custom_command( TARGET foo COMMAND ${CMAKE_COMMAND} copy ${CMAKE_CURRENT_BINARY_DIR}/test/input.txt ${CMAKE_SOURCE_DIR})
Aber nein Eine davon funktioniert.
Was mache ich falsch?