instalar - Creando un directorio en CMake
instalar cmake ubuntu (3)
En CMake, quiero crear un directorio si aún no existe. ¿Cómo puedo hacer esto?
¿Cuándo quieres crear el directorio?
En la generación del sistema de compilación
Para crear un directorio cuando CMake genera el sistema de compilación,
file(MAKE_DIRECTORY ${directory})
En tiempo de construcción
En el add_custom_command()
(que agrega una regla de compilación personalizada al sistema de compilación generado) y el add_custom_target()
(que agrega un destino sin salida por lo que siempre se compilará), especifique los comandos para ejecutar en la compilación hora. Cree un directorio ejecutando el comando ${CMAKE_COMMAND} -E make_directory
. Por ejemplo:
add_custom_target(build-time-make-directory ALL
COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
En el momento de la instalación
Para crear un directorio en el momento de la instalación,
install(DIRECTORY DESTINATION ${directory})
Además de la respuesta de Chin Huang, también puedes hacer esto en tiempo de compilación con add_custom_command
:
add_custom_command(TARGET ${target_name} PRE_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
También puede cambiar el momento, cuando su directorio se crea con PRE_BUILD | PRE_LINK | Parámetros POST_BUILD.
Para crear un directorio en el momento de la instalación,
install(DIRECTORY DESTINATION ${directory})
Ambos se ejecutarán en el momento de configuración:
file(MAKE_DIRECTORY ${directory})
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
Para crear durante la construcción, use un objetivo personalizado:
add_custom_target(mytargetname ALL COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})