Una de las ventajas de distribuciones Linux es su capacidad para instalar y administrar herramientas de múltiples usos, uno de los más populares es todo lo relacionado con programación, Linux es una plataforma enriquecida para este tipo de tareas ya que como mencionamos será posible hacer uso de diversas plataformas para expandir dicha acción y CMake es una de las mejores opciones disponibles gracias a su funcionamiento multiplataforma.
CMake es usado en su gran mayoría en los lenguajes C y C++, pero no significa que solo aplique a estos dos ya que será posible compilar código fuente de otros lenguajes compatibles.
-S <ruta>: indica el directorio de origen
-B <ruta_directorio>: hace referencia al directorio de compilación
-C <cache_inicial>: precarga un script para llenar la caché
-D <var>[:<tipo>]=<valor>: crea o actualiza una entrada de caché CMake
-G <generador>: indica un generador de sistema de compilación
-T <grupo_herramientas >: hace referencia al nombre del conjunto de herramientas para ver su compatibilidad con el generador
--install-prefix <directorio>Indica el directorio de instalación
-Wdev: habilita las advertencias para desarrolladores
-Wno-dev: omite las advertencias para el desarrollador
--preset <preestablecido>: indica un valor predeterminado de configuración
--list-presets: aplica la lista de ajustes preestablecidos
-E: es el modo de comando CMake
--build <dir>: crea un árbol binario generado por CMake
-N: hace uso del modo de visualización
--trace: establece CMake en modo de rastreo
Solvetic te explicará cómo instalar CMake en Linux y para este caso usaremos Ubuntu.
Cómo instalar CMake en Linux
Abrimos la terminal e instalamos las utilidades iniciales con el comando:
sudo apt install clang lldb lld
Debemos confirmar este proceso ingresando la letra S:
Se iniciara la descarga e instalación:
Al finalizar este proceso veremos lo siguiente:
Clang es una interfaz de lenguaje y una infraestructura de herramientas disponible para los lenguajes C (C, C++, Objective C/C++, OpenCL, CUDA y RenderScript) y para el proyecto LLVM, está integrado por un controlador de compilador compatible con GCC (clang) y un controlador de compilador que es compatible con MSVC (clang-cl.exe), dentro de sus características encontramos:
- Arquitectura basada en el modelo de biblioteca modular
- Diagnósticos expresivos
- Compilaciones rápidas y bajo uso de memoria para no exceder los recursos
- Compatibilidad con GCC
- Integración con IDE
- Integra un analizador unificado para C, Objective C, C++ y Objective C++
Ahora instalamos GCC:
sudo apt install build-essential
GCC (GNU Compiler Collection) son un grupo de compiladores GNU para las interfaces C, C++, Objective-C, Fortran, Ada, Go y D, algunas de sus características son:
- Cuenta con múltiples interfaces de idioma
- Compatible con microcontroladores, DSP y CPU de 64 bits
- GCC está escrito en C
- Posee un diseño modular
Una vez instalado esto, abrimos Ubuntu Software para buscar e instalar CMake:
Damos clic sobre CMake para ver lo siguiente:
Damos clic en Instalar, confirmamos la contraseña y se dará paso a la instalación:
Al finalizar veremos lo siguiente:
La sintaxis para usar CMake en Linux es la siguiente:
cmake -DCMAKE_SHARED_LINKER_FLAGS="-fuse-ld=<linker>" -DCMAKE_EXE_LINKER_FLAGS="-fuse-ld= <linker" -DCMAKE_CXX_COMPILER=<C++ compiler>
En la terminal ejecutamos "cmake" para ver las opciones disponibles:
CMake puede usar generadores para plataformas como:
- Sublime Text 2 – Ninja
- Sublime Text 2 – Unix
- Kate – Ninja
- Watcom WMake
- Ninja
- Eclipse CDT4 – Ninja
- Eclipse CDT4 – Unix
- CodeBlocks – Ninja
- CodeLite – Ninja
- CodeLite – Unix
CMake es una valiosa herramienta si tu enfoque es el desarrollo gracias a que con sus funciones esta tarea se convertirá en algo sumamente simple pero lleno de opciones de expansión.