Compiler-Controlled LINK Options

OverviewHow Do IFAQDetailsLinker Options

The CL compiler automatically calls LINK unless you specify the /c option. CL provides some control over the linker through command-line options and arguments. The following table summarizes the features in CL that affect linking.

Compiler-Controlled LINK Options

CL command-line
specification

CL action that affects LINK
Any file name extension other than .C, .CXX, .CPP, or .DEF Passes a file name as input to LINK
filename.DEF Passes /DEF:filename.DEF
/Fnumber Passes /STACK:number
/Fdfilename Passes /PDB:filename
/Fefilename Passes /OUT:filename
/Fmfilename Passes /MAP:filename
/Gy Creates packaged functions (COMDATs); enables function-level linking
/LD Passes /DLL
/LDd Passes /DLL
/link Passes remainder of command line to LINK
/MD, /ML, or /MT Places a default library name in the .OBJ file
/MDd, /MLd, or /MTd Places a default library name in the .OBJ file. Defines the symbol _DEBUG.
/nologo Passes /NOLOGO
/Zd Passes /DEBUG /DEBUGTYPE:COFF
/Zi or /Z7 Passes /DEBUG /DEBUGTYPE:CV
/Zl Omits default library name from .OBJ file

For more information on compiler options, see Compiler Option Reference.