¿Qué es un linker o enlazador?

A grandes rasgos, el enlazador es el programa encargado de tomar todos los archivos objeto (.o) generados por el compilador (o ya presentes en una biblioteca), combinarlos y crear un ejecutable.

La mayoría de las veces se utilizan diversos archivos a la hora de crear un programa. Esto es lo mismo que decir que un programa de ordenador está compuesto por diferentes módulos. Cada uno de estos módulos se compila de forma independiente y dispone de una referencia simbólica. Así pues, una vez compilados, el linker podrá crear un «único» archivo, unificando todos los archivos objeto gracias a sus referencias simbólicas.

El enlazador puede tomar la información a través de archivos objeto o de bibliotecas. Además, es capaz de eliminar todos aquellos recursos que no sean necesarios. Finalmente, enlaza toda la información recopilada para poder devolver los ejecutables o las bibliotecas que se quieran crear.

Funcionamiento del enlazador y linker

Para seguir aprendiendo…

S3lab: ¿Cómo funciona un linker?

UC3M: El modelo de compilación en C

Linux Terminal: man ld (manual sobre el linker utilizado por gcc para compilar archivos .c)

Anuncio publicitario

2 comentarios sobre “¿Qué es un linker o enlazador?

  1. Gracias por compartir, recién me entero sobre los linkers, pese a que ya lo había visto con anterioridad en algunas lecturas hoy me animé a averiguar de que trata, gracias!

    Me gusta

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: