.obj Files as Linker Input
LINK accepts .obj files that are either Common Object File Format (COFF) or 32-bit Object Module Format (OMF). Microsoft's Visual C++ compiler creates COFF .obj files.
LINK automatically converts 32-bit OMF objects to COFF. However, there are limitations to OMF to COFF conversions. OMF can represent some things that cannot be represented in COFF. If there are errors when the linker converts from OMF to COFF, then you will need to use COFF .obj files instead of OMF .obj files as input to the linker.
In some circumstances, .obj files can be used instead of .netmodule files. For information on when to use .netmodule files and when to use .obj files, see Choosing the Format of .netmodule Input Files.