Herramientas de usuario

Herramientas del sitio


compilacion

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
compilacion [2013/04/16 15:34] – [Link] lmateucompilacion [2014/09/04 13:42] (actual) – [Preproceso] lmateu
Línea 1: Línea 1:
-===== Fases de la Compilación =====+===== Etapas de la Compilación =====
  
 La compilación de un programa en C pasa por varias etapas desde La compilación de un programa en C pasa por varias etapas desde
Línea 77: Línea 77:
   % gcc -E prog.c   % gcc -E prog.c
      
-La salida estandar mostrará:+La salida estándar mostrará:
  
   int main(int argc, char **argv) {   int main(int argc, char **argv) {
Línea 182: Línea 182:
 al ensablador que no reserve espacio para ella porque se trata de una promesa de que otro archivo al ensablador que no reserve espacio para ella porque se trata de una promesa de que otro archivo
 la va a declarar.  Por otra parte b no es una referencia pendiente porque no lleva el atributo la va a declarar.  Por otra parte b no es una referencia pendiente porque no lleva el atributo
-'extern' Gcc invoca el linker de esta forma:+'extern'.
  
-  ln a.o b.o+La fase de link en Unix la realiza el comando ''ld'', que viene de //loader// Sin embargo este es 
 +un error histórico, porque su tarea no es la de un //loader// (cargardor).  Normalmente el cargador 
 +es la componente del núcleo del sistema operativo que carga un archivo ejecutable en la memoria del 
 +computador para que sea ejecutado.  De todas formas, el nombre 
 +se conserva quizás por compatibilidad.  Gcc invoca el linker de esta forma: 
 + 
 +  ld a.o b.o ... otros argumentos ...
  
  
compilacion.1366126456.txt.gz · Última modificación: 2013/04/16 15:34 por lmateu