From OSDev Wiki
Jump to: navigation, search

Link and NLink are Microsoft's linkers. There are really three fundamentally different linkers.

Versions 1.x through 3.x can only produce DOS output. Technically, the really early ones can only produce .com files, and IIRC, starting with 2.x they can also produce .exe files.

Starting with version 4.x, MS Link can also produce NE format output files. These accept OMF/OBJ format with some MS extensions.

Starting with version 6.x, MS link can produce only PE format output files.

These accept either COFF/PE or 32-bit OMF/OBJ format object files and produce (only) PE files as output. They support a few things missing from the Borland linker such as the ability to specify the entry point. Debug formats supported include COFF and CodeView.

Here I should note that I'm listing only the relatively mainstream versions of MS link. They've also produced versions that produce various other formats of output, mostly for OS/2 and/or Windows 3.x VxDs (e.g. LE and LX format).

Personal tools