Updated: 04/26/2017 by Computer Hope

In computer science, a linker is a computer program that takes one or more object files generated by a compiler and combines them into one, executable program.

Computer programs are usually made up of multiple modules that span separate object files, each being a compiled computer program. The program as a whole refers to these separately compiled object files using symbols. The linker combines these separate files into a single, unified program; resolving the symbolic references as it goes along.

Dynamic linking is a similar process, available on many operating systems, which postpones the resolution of some symbols until the program is executed. When the program is run, these dynamic link libraries are loaded as well. Dynamic linking does not require a linker.

The linker bundled with most Linux systems is called ld; see our ld documentation page for more information.

Executable, Module, Object file, Programming, Programming terms