CMake에서 디렉토리가 없으면 디렉토리를 만들고 싶습니다. 어떻게해야합니까?
답변
언제 디렉토리를 작성 하시겠습니까?
빌드 시스템 생성시
CMake가 빌드 시스템을 생성 할 때 디렉토리를 작성하려면
file(MAKE_DIRECTORY ${directory})
빌드시
에서 add_custom_command()
(생성 된 빌드 시스템에 사용자 지정 빌드 규칙을 추가) 명령하고, add_custom_target()
(가 항상 지어 질 것이다 그래서 출력 대상을 추가) 명령을, 당신은 빌드시에 실행 명령을 지정합니다. 명령을 실행하여 디렉토리를 작성하십시오 ${CMAKE_COMMAND} -E make_directory
. 예를 들면 다음과 같습니다.
add_custom_target(build-time-make-directory ALL
COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
설치시
설치시 디렉토리를 작성하려면
install(DIRECTORY DESTINATION ${directory})
답변
설치시 디렉토리를 작성하려면
install(DIRECTORY DESTINATION ${directory})
이들은 구성 시간에 모두 실행됩니다.
file(MAKE_DIRECTORY ${directory})
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
빌드 중에 작성하려면 사용자 정의 대상을 사용하십시오.
add_custom_target(mytargetname ALL COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
답변
Chin Huang의 답변 외에도 빌드 타임에 add_custom_command
다음을 수행 할 수 있습니다 .
add_custom_command(TARGET ${target_name} PRE_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
PRE_BUILD
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 디렉토리 디렉토리를 사용하여 디렉토리를 만들 때 | 순간을 변경할 수도 있습니다. | PRE_LINK
| POST_BUILD
매개 변수.