Desde Linux Darkcrizt  

GNU Make 4.4 ya fue liberado y estas son sus novedades

gnu-make

GNU make es una herramienta que controla la generación de ejecutables y otros archivos

Después de casi tres años de desarrollo, se lanzó el sistema de compilación GNU Make 4.4, en esta nueva versión además de corregir errores, se pueden observar que fueron añadidas mejoras, asi como tambien que se han incrementado los requisitos para el entorno de compilación.

Para quienes desconocen de GNU Make, deben saber que esta es una utilidad de desarrollo increíblemente popular que organiza la compilación de proyectos de software. Make se usa a menudo para administrar el conjunto de compiladores GCC, pero se puede usar para cualquier tarea de desarrollo o empaquetado de software.

Dado que la creación de programas C/C++ grandes suele implicar varios pasos, se necesita una herramienta como Make para garantizar que todos los archivos de origen estén compilados y vinculados. Make también permite que el desarrollador controle cómo se empaquetan e instalan los archivos auxiliares, como la documentación, las páginas man, los perfiles systemd, los scripts de inicio y las plantillas de configuración.

Make no se limita a lenguajes como C/C++. Los desarrolladores web pueden usar GNU Make para realizar tareas repetitivas como minimizar CSS y JS, y los administradores de sistemas pueden automatizar las tareas de mantenimiento.

Además, los usuarios finales pueden usar Make para compilar e instalar software sin ser programadores ni expertos en el software que están instalando.

Principales novedades de GNU Make 4.4

En esta nueva versión que se presenta, las plataformas OS/2 (EMX), AmigaOS, Xenix y Cray han quedado obsoletas, ademas de que en la próxima versión de GNU Make, se eliminará el soporte para estos sistemas.

Otro de los cambios que se presenta en la nueva versión, es que se han incrementado los requisitos para el entorno de compilación, para compilar GNU Gnulib ahora necesita un compilador que admita elementos del estándar C99.

Ademas de ello, se ha agregado un objetivo de compilación .WAIT especial que permite pausar el lanzamiento de la compilación de ciertos objetivos hasta que se complete la compilación de otros objetivos.

Mientras que .NOTPARALLEL, se implementa la capacidad de especificar requisitos previos (archivos necesarios para crear el objetivo) para iniciar secuencialmente los objetivos asociados con ellos (como si se hubiera establecido «.WAIT» entre cada requisito previo).

Por otra parte, se agregó .NOTINTERMEDIATE que deshabilita el comportamiento asociado con el uso de objetivos intermedios (.INTERMEDIATE) para archivos específicos, archivos que coinciden con la máscara o todo el archivo MAKE.

En los sistemas compatibles con mkfifo, se proporciona un nuevo método de interacción con el servidor de trabajos durante la ejecución paralela de trabajos basado en el uso de canalizaciones con nombre, ademas de que se agregó la opción «–jobserver-style=pipe» para devolver el método antiguo basado en canalizaciones sin nombre.

Tambien se destaca que se ha ampliado el uso de archivos temporales en el proceso de trabajo (pueden surgir problemas cuando el sistema de compilación establece un directorio alternativo para archivos temporales (TMPDIR) y elimina el contenido de TMPDIR durante la compilación).

De los demás cambios que se destacan de esta nueva versión:

  • Implementó la función $(let…), que le permite definir variables locales en funciones definidas por el usuario.
  • Se implementó la función $(intcmp…) para comparar números.
  • Al usar la opción «-l» (–load-average), la cantidad de trabajos que se iniciarán ahora tiene en cuenta los datos del archivo /proc/loadavg sobre la carga en el sistema.
  • Se agregó la opción «–shuffle» para barajar los requisitos previos, lo que permite un comportamiento no determinista en compilaciones paralelizadas (por ejemplo, para probar de manera fuzz la corrección de la definición de requisitos previos en un archivo MAKE).

Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

¿Como instalar GNU Make en Linux?

Para los que estén interesados en poder instalar esta herramienta, pueden hacerlo ejecutando alguno de los siguientes comandos:

Para los que son usuarios de Debian/Ubuntu o algún derivado estos:

sudo apt install make

En el caso de los que son usuarios de Fedora/RHEL o derivados:
yum install make

Mientras que para los que son usuarios de Arch Linux y derivados:

sudo pacman -S make

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.