CLion hakkında basit bir proje oluşturmaya çalışıyorum. Proje (veya bir çeşit) oluşturmak için Makefiles oluşturmak için CMake (burada yeniyim) kullanıyor
Tek ihtiyacım olan proje dışı bir dosyayı (bir çeşit kaynak dosyası), kodumu her çalıştırdığımda ikili dizine aktarmak.
Bu dosya test verilerini içerir ve uygulama onları okumak için açar. Bunu yapmanın birkaç yolunu denedim:
Üzerinden
file(COPY ...file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/input.txt DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/input.txtİyi görünüyor, ancak yalnızca bir kez çalışıyor ve bir sonraki çalıştırmadan sonra dosyayı yeniden kopyalamıyor.
Üzerinden
add_custom_commandOUTPUTversiyonadd_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)TARGETversiyonadd_custom_target(foo) add_custom_command( TARGET foo COMMAND ${CMAKE_COMMAND} copy ${CMAKE_CURRENT_BINARY_DIR}/test/input.txt ${CMAKE_SOURCE_DIR})
Ama hiçbiri işe yaramıyor.
Neyi yanlış yapıyorum?
configure_fileBir dosya listesi oluşturmak için GLOB kullansanız bile, bunun alt dizinlerle çalışmayacağını lütfen unutmayın .