Compiler Command-Line Syntax

The CL command line uses the following syntax:

CL [option...] file... [option | file]... [lib...] [@command-file] [/link link-opt...]

The following table describes input to the CL command.




One or more CL options. Note that all options apply to all specified source files. Options are specified by either a forward slash (/) or a dash (–). If an option takes an argument, the option's description documents whether a space is allowed between the option and the arguments. Option names (except for the /HELP option) are case sensitive. See Order of CL Options for more information.


The name of one or more source files, .obj files, or libraries. CL compiles source files and passes the names of the .obj files and libraries to the linker. See CL Filename Syntax for more information.


One or more library names. CL passes these names to the linker.


A file that contains multiple options and filenames. See CL Command Files for more information.


One or more linker options. CL passes these options to the linker.

You can specify any number of options, filenames, and library names, as long as the number of characters on the command line does not exceed 1024, the limit dictated by the operating system.

For information about the return value of cl.exe, see Return Value of cl.exe .


The command-line input limit of 1024 characters is not guaranteed to remain the same in future releases of Windows.

See Also


Setting Compiler Options

Compiler Options