nextupprevious
Next: 17.4. Otras utilidades Up: ÍndicePrevious: 17.2. Grep


17.3. Make

La utilidad make también es un estandar en entornos de programación UNIX. make se utiliza para mantener los programas acutalizados según su última versión a través de las siguiente serie de acciones:
  • Lee un fichero especial (fichero makefile) que ha de crear el usuario. Este fichero indica a make qué ficheros objeto (con nombre *.obj en DOS y *.o en unix) y librerías (con nombre *.lib en DOS y *.a en unix) han de ser enlazados con el linker para generar el fichero ejecutable, y qué ficheros fuente (*.c) y de cabeceras (*.h) han de compilarse para generar cada uno de los ficheros objeto.
  • Compara la fecha y hora de cada fichero objeto con la de los correspondientes ficheros fuente de los que depende: si alguna de estas fechas es posterior a la del fichero objeto, make detecta que el fichero fuente ha sido modificado y que debe ser recompilado.
  • Invoca al compilador de línea para recompilar el fichero fuente que ha sido modificado.
  • Una vez que los ficheros objeto han sido actualizados, compara las fechas de éstos con las del correspondiente ejecutable.
  • Si la fecha de alguno de los ficheros objeto es posterior a la del ejecutable, invoca al enlazador (linker) para generar de nuevo el fichero ejecutable (*.exe en DOS).
  • Como se puede observar, make se basa fuertemente en la fecha y hora que el sistema operativo coloca a los ficheros. Si se va a trabajar con esta utilidad, es fundamental mantener el reloj y calendario del sistema actualizado.
La utilidad make es tanto más conveniente cuanto más complejo sea el programa ejecutable que se está construyendo. La situación ideal es cuando el fichero ejecutable consta de muchos módulos que pueden ser compilados separadamente.
La documentación correspondiente a la utilidad make de Borland así como la del TLINK (Linker de Borland) está disponible para los alumnos.

make_es.txt La página de manual (man) del GNU make (en español)
make_in.txt  La página de manual (man) del make de SunOS (en inglés)
adios.mak    Un fichero makefile (DOS) para construir el programa adios.exe a partir de adios.c
words.mak   Un fichero makefile (DOS) para construir el ejecutable words.exe



nextupprevious
Next: 17.4. Otras utilidades Up: ÍndicePrevious: 17.2. Grep


Última modificación: 26/4/1999


Copyright © 1999, F. de Sande - Centro Superior de Informática, Universidad de La Laguna.
All rights reserved.