Compiler-Controlled LINK Options

 

For the latest documentation on Visual Studio 2017, see Visual Studio 2017 Documentation.

For the latest documentation on Visual Studio 2017, see Compiler-Controlled LINK Options on docs.microsoft.com. 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.

CL specificationCL action that affects LINK
Any file name extension other than .c, .cxx, .cpp, or .defPasses a file name as input to LINK
filename.defPasses /DEF:filename.def
/FnumberPasses /STACK:number
/FdfilenamePasses /PDB:filename
/FefilenamePasses /OUT:filename
/FmfilenamePasses /MAP:filename
/GyCreates packaged functions (COMDATs); enables function-level linking
/LDPasses /DLL
/LDdPasses /DLL
/linkPasses remainder of command line to LINK
/MD or /MTPlaces a default library name in the .obj file
/MDd or /MTdPlaces a default library name in the .obj file. Defines the symbol _DEBUG
/nologoPasses /NOLOGO
/ZdPasses /DEBUG
/Zi or /Z7Passes /DEBUG
/ZlOmits default library name from .obj file

For more information, see Compiler Options.

Setting Linker Options
Linker Options

Show: