Compilación con gcc de una aplicación que se compone de más de un fichero fuente

En los siguientes enlaces tienes un ejemplo de aplicación que se compone de dos ficheros fuente C. Un fichero con el módulo principal y otro con un módulo auxiliar .

Vamos a compilar dicha aplicación de dos maneras fiferentes

Compilación básica (una aplicación con más de un fichero fuente)

Ejecutar el programa

Puedes ejecutar la palicación como siempre.

$ ./Despertador_1    3   "Prueba 1 de dormir"

Compilación separada con gcc

Ahora vamos a crear la aplicación pero utilizando la compilación separada. Para ello, primero compilaremos cada uno de los ficheros fuentes, para genererar sus respectivo ficheros de módulo objeto.

$ gcc Despertador_m.c       # Que genenerá el fichero objeto Despertador_m.o
$ gcc Despertador_f.c       # Que genenerá el fichero objeto Despertador_f.o

Y posteriormente montaremos los ficheros objeto para crear la aplicación ejecutable.

$ gcc Despertador_m.o Despertador_f.o  Despertador_2 -o

De este otro modo (Compilación Separada), para cada fichero se si fichero objeto y posteriormente se genera el fichero ejecutable de la aplicación.

Y para ejecutar el programa

$ ./Despertador_2    4  "Prueba 2 de dormir"

¿Qué método de compilación es el más adecuado?

Supongamos que ahora tenemos que desarrollar una aplicación que se compone de más de 15 ficheros fuente C. ¿Que método de compilación sería el más adecuado?

En en una actividad del Tema 5, podrás estudiar que método sería el más adecuado.