Crear un Makefile Modular

CBeginner
Practicar Ahora

Introducción

En este desafío, aprenderás a crear un Makefile básico para compilar un programa sencillo en C. Comprenderás cómo los archivos Makefile ayudan a automatizar el proceso de construcción y a gestionar múltiples archivos de código fuente.

Este es un Desafío (Challenge), el cual difiere de un Laboratorio Guiado en que debes intentar completar la tarea de forma independiente, en lugar de seguir pasos detallados para aprender. Los desafíos suelen tener cierta dificultad. Si te resulta complicado, puedes consultarlo con Labby o revisar la solución. Los datos históricos muestran que este es un desafío de nivel principiante con una tasa de aprobación del 98%. Ha recibido una tasa de valoraciones positivas del 95% por parte de los estudiantes.

Crear un Makefile Básico

En este desafío, crearás un Makefile básico para compilar un programa simple en C. El programa consta de dos archivos fuente: hello.c y utils.c. El archivo hello.c contiene la función principal que imprime un mensaje en la consola. El archivo utils.c contiene una función de utilidad que es invocada desde la función principal.

Tareas

  • Crear un Makefile que compile el programa.
  • Añadir reglas para compilar ambos archivos fuente.
  • Añadir un objetivo clean para eliminar los archivos compilados.

Requisitos

  • Utilizar los archivos fuente proporcionados en ~/project.
  • El Makefile debe compilar tanto hello.c como utils.c.
  • Crear un ejecutable llamado hello.
  • Incluir un objetivo clean.
  • Utilizar GCC como compilador.

Ejemplos

Ejecuta los siguientes comandos para compilar el programa:

cd ~/project
make
gcc -c hello.c
gcc -c utils.c
gcc hello.o utils.o -o hello

Ejecuta el programa compilado:

./hello

Ejemplo de salida del programa:

Hello, World!
Utility function called!

Después de ejecutar el programa, realiza la limpieza de los archivos compilados.

Consejos

  • Recuerda utilizar el carácter TAB (tabulador) para la indentación en el Makefile.
  • Utiliza la bandera -c para compilar los archivos fuente en archivos de objeto.
  • Prueba el programa después de la compilación.
✨ Revisar Solución y Practicar

Resumen

Este desafío te ha introducido en la creación básica de archivos Makefile. Has aprendido a escribir un Makefile sencillo para compilar múltiples archivos fuente, generar un ejecutable y limpiar los artefactos de construcción. Estas son habilidades fundamentales para gestionar proyectos de programación en C.