The GNU Make Book – Construir automatización

The GNU Make Book – Construir automatización

The GNU Make Book – Construir automatización

VALORACIÓN DEL ARTÍCULO:
5/5


Además de escribir sobre Linux y escribir reseñas y tutoriales sobre distribuciones y herramientas, también estoy muy involucrado en el desarrollo de software. Desafortunadamente, el 99,9% de ese desarrollo de software tiene lugar en la plataforma Windows.

Tengo más de 20 años de experiencia como desarrollador de C++, Visual Basic, VB.NET, y C# y también soy un experto en SQL Server como DBA y como desarrollador.

En lo que no soy muy bueno es en desarrollar software para Linux. Es algo con lo que nunca me he molestado. La razón principal es que después de desarrollar software durante el día lo último que quiero hacer es sentarme a escribir más software.

Obviamente me gusta jugar con los guiones y escribir un pequeño programa. Estos son generalmente para proyectos electrónicos basados en el PI Frambuesa.

Una de las cosas con las que muchos desarrolladores en la plataforma Windows tendrán problemas cuando se trasladen por primera vez a Linux es aprender sobre las herramientas necesarias para crear y empaquetar aplicaciones.

El tipo de aplicación más fácil de desarrollar son las aplicaciones web porque generalmente no requieren código compilado (PHP, Perl, Python) y los archivos se despliegan en un lugar fijo en el servidor web.

Un gran número de aplicaciones construidas para Linux se desarrollan usando C, C++ o Python. Compilar un solo programa en C es relativamente fácil, pero cuando se necesita compilar un número de programas en C con múltiples dependencias las cosas se ponen un poco más complicadas.

GNU Make es una herramienta de creación de scripts de automatización que le ayuda a compilar sus aplicaciones una y otra vez y de diferentes maneras. Por ejemplo, puede proporcionar un parámetro que, dependiendo del valor, compilará una aplicación utilizando 64 o 32 bits.

El libro de GNU Make ha sido escrito por John Graham-Cumming para ayudar a los usuarios de GNU Make a comprender mejor las complejidades asociadas con GNU Make.

El libro está dividido en seis capítulos:

  1. Lo Básico Revisado
  2. Depuración de Makefile
  3. Construcción y reconstrucción
  4. Trampas y problemas
  5. Empujar el sobre
  6. La biblioteca estándar de GNU

No creo que el libro esté realmente dirigido a principiantes porque carece de ciertas aclaraciones que se podrían esperar al aprender un nuevo tema como «¿Qué es GNU Make? y cómo crear un archivo Make», «¿Por qué es mejor usar Make que compilar cada programa uno por uno? Todas estas áreas temáticas están cubiertas en el manual de GNU Make.

El hecho de que el primer capítulo se llame «The Básico Revisited» en contraposición a «The Básico» muestra claramente que se espera que usted tenga una base en el tema antes de comenzar.

El primer capítulo cubre todos los aspectos básicos como el uso de variables, los entornos utilizados por los comandos y el entorno $(Shell). A medida que el capítulo avanza, usted entra en el tema de la comparación, las listas y las funciones definidas por el usuario.

Si ha estado usando GNU Make por un tiempo pero aún no se considera un experto, hay algunos consejos y sugerencias que le ayudarán a entender ciertas complejidades que pueden no ser aparentes inmediatamente.

El segundo capítulo será una bendición para aquellos de ustedes que han estado tratando de atrapar errores en la construcción de scripts. La sección «Makefile Debugging» está llena de excelentes consejos y sugerencias para depurar Makefiles e incluye secciones sobre la impresión de valores de variables e incluso la descarga del valor de cada variable. Más adelante en el capítulo, hay una guía del Depurador de GNU que puede usar para revisar los scripts.

El tercer capítulo incluye makefiles de ejemplo, pero más que eso te muestra cómo crear Makefiles que puedes ejecutar una y otra vez.

«Trampas y Problemas» examina las diferencias entre ciertos términos tales como = y :=, y ifndef y ?=.

Me di cuenta, a medida que avanzaba en el libro, que debido a que no estoy tratando activamente de usar GNU Make y a que mi conocimiento está a un nivel muy básico, algunos de los temas que se trataban pasaban por alto.

En el momento en que llegué al capítulo «Empujar el sobre», mis ojos se habían vuelto algo vidriosos.

Mi resumen principal, si tuviera que resumir este libro, es que el autor conoce claramente su contenido y ha tratado de transmitir toda la información posible.

El problema es que a veces, cuando un experto en la materia trata de escribir algo, tiene este «oh, es fácil, todo lo que tienes que hacer es….» aura sobre ellos.

El sello de goma de mi puerta trasera se desprendió la semana pasada y como sólo tiene un par de años llamé a la compañía que lo instaló, ya que todavía está en garantía.

La señora al teléfono dijo: «Oh, está bien, te enviaré un nuevo sello».

Le dije: «Oh, ¿tengo que hacerlo yo mismo? Es algo que puedo hacer».

La respuesta fue «Claro que puedes, todo lo que tienes que hacer es quitar la puerta, colocar el sello y volver a poner la puerta».

Ahora mi pensamiento instantáneo fue «woah, rebobina un poco. Quita la puerta?!??». No estoy capacitado para quitar una puerta, colocar un sello y volver a colocar la puerta. Eso se lo dejo a los expertos.

Con este libro, siento que necesitas otro libro y una cierta cantidad de experiencia escribiendo Makefiles antes de que te resulte útil.

Creo que las sugerencias, consejos y conocimientos que se ofrecen ayudarían a algunas personas a decir «Oh, así que por eso hace eso» o «No me di cuenta de que podías hacerlo de esa manera».

Mi evaluación es, por lo tanto, que debería comprar este libro si está buscando clarificación o conocimientos más intermedios o avanzados sobre GNU Make, pero no es un libro para principiantes.

Deja un comentario

TAMBIÉN TE INTERESA

Software para clinicas

Así es un software para clínicas: gestión integral en la nube

Si trabajas o tienes una clínica, te habrás dado cuenta de la existencia de muchos software para clínicas, pero, ¿qué son y para qué sirven? Lo primero que tienes que saber es que no siempre se trata de complejos sistemas para grandes hospitales. También existen software para clínicas sencillos y completos que resultan muy útiles

Wifi 6

Este es el primer router de Synalogy con certificación Wifi 6

Cada vez queremos navegar más rápido y por ello exigimos tecnologías que facilitan velocidad y seguridad. Wifi 6 se erige como el gran estándar actual de la conectividad, pero necesitamos dispositivos que estén adaptados a ello. En estas líneas presentamos el router que tiene Synalogy en el mercado, pero antes hablaremos un poco de las

servidores discord

Discord es utilizada por menores para propagar malware y ganar dinero

Discord no es solo un chat de voz que utilizan los jugadores durante sus partidas. Se ha convertido en una plataforma de mensajería muy completa, pero no exenta de peligros y amenazas contra la ciberseguridad. Lo peor es que esta herramienta es utilizada frecuentemente por menores de edad.   Índice de contenidos1 Está pasando en

trabajando en proyecto de IA

Inteligencia artificial: 8 claves para pasar de un experimento a una implementación

Es un hecho que la inteligencia artificial será la base de muchos proyectos empresariales y la solución que busquen todos los sectores para optimizar y hacer eficientes sus actividades. El mundo agrario, la salud, departamentos de recursos humanos, ventas… Cualquier ámbito que uno piense es óptimo para la llegada de herramientas inteligentes.   La IA

realidad virtual

¿En qué tipo de cascos de RV está trabajando Meta?

No es un misterio que el paso de Facebook a Meta está estratégicamente diseñado para expandir y democratizar el metaverso a los usuarios de internet. Hace falta para eso tiempo de desarrollo técnico, talento y mucha mentalidad. También harán falta nuevos accesorios para navegar en el metaverso de una forma inmersiva. Gran parte de este