cmake
Empaquetado y distribución de proyectos.
Buscar..
Sintaxis
- # Empaquetar un directorio de compilación
paquete [RUTA] - # Usa un generador específico
cpack -G [GENERADOR] [RUTA] - # Proporcionar anulaciones opcionales
- cpack -G [GENERADOR] -C [CONFIGURACIÓN] -P [NOMBRE DEL PAQUETE] -R [VERSIÓN DEL PAQUETE] -B [DIRECTORIO DE PAQUETES] --vendor [VENDEDOR DE PAQUETES]
Observaciones
CPack es una herramienta externa que permite el empaquetado rápido de proyectos CMake construidos al recopilar todos los datos necesarios directamente de los archivos CMakeLists.txt y los comandos de instalación utilizados, como install_targets() .
Para que CPack funcione correctamente, el CMakeLists.txt debe incluir los archivos o destinos que se instalarán utilizando el objetivo de compilación de install .
Una secuencia de comandos mínima podría tener este aspecto:
# Required headers
cmake(3.0)
# Basic project setup
project(my-tool)
# Define a buildable target
add_executable(tool main.cpp)
# Provide installation instructions
install_targets(tool DESTINATION bin)
Creando un paquete para un proyecto CMake construido
Para crear un paquete redistribuible (por ejemplo, un archivo ZIP o un programa de configuración), normalmente es suficiente simplemente invocar CPack utilizando una sintaxis muy similar a la de llamar a CMake:
cpack path/to/build/directory
Dependiendo del entorno, esto reunirá todos los archivos necesarios / instalados para el proyecto y los colocará en un archivo comprimido o un instalador autoextraíble.
Seleccionando un generador CPack para ser utilizado
Para crear un paquete con un formato específico, es posible elegir el generador que se utilizará.
Similar a CMake esto se puede hacer usando el argumento -G :
cpack -G 7Z .
El uso de esta línea de comando empaquetaría el proyecto construido en el directorio actual usando el formato de archivo 7-Zip.
Al momento de escribir, CPack versión 3.5 soporta los siguientes generadores por defecto:
- Formato de archivo
7Z7-Zip (archivo) -
IFWQt Installer Framework (ejecutable) - Instalador suave nulo de
NSIS(ejecutable) -
NSIS64Null Soft Installer (64 bits, ejecutable) -
STGZauto extraíble Tar GZip (archivo) -
TBZ2Tar BZip2 (archivo) - Compresión
TGZTar GZip (archivo) -
TXZTar XZ de compresión (archivo) - Compresión
TZTar Compress (archivo) - Formato de archivo
WIXMSI a través de herramientas WiX (archivo ejecutable) - Formato de archivo
ZIPZIP (archivo)
Si no se proporciona un generador explícito, CPack intentará determinar el mejor disponible dependiendo del entorno real. Por ejemplo, preferirá crear un archivo ejecutable autoextraíble en Windows y solo creará un archivo ZIP si no se encuentra un conjunto de herramientas adecuado.