Microsoft C 5.1

From Computer History Wiki
Jump to: navigation, search

This version of Microsoft C supported both OS/2, MS-DOS and Windows, although both OS/2 and Windows needed the SDK's to be useful.

command line options for cl

cl.exe is the main driver for the compiler, and below are it's options.. I find it hard to find these as the years go by.


                          C COMPILER OPTIONS

                            -MEMORY MODEL-
/AS small model (default)               /AC compact model
/AM medium model                        /AL large model
/AH huge model
                            -OPTIMIZATION-
/O enable optimization (same as /Ot)    /Oa ignore aliasing
/Od disable optimizations               /Oi enable intrinsic functions
/Ol enable loop optimizations           /On disable "unsafe" optimizations
/Op enable precision optimizations      /Or disable in_line return
/Os optimize for space                  /Ot optimize for speed (default)
/Ox max. optimization (/Oailt /Gs)
                          -CODE GENERATION-
/G0 8086 instructions (default)         /G1  186 instructions
/G2  286 instructions                   /Gm put strings in constant segment
/Gc Pascal style function calls         /Gs no stack checking
/Gt[number] data size threshold
                            -OUTPUT FILES-
/Fa[assembly listing file]              /Fb[bound executable file]
/Fc[mixed source/object listing file]   /Fe<executable file>
/Fl[object listing file]                /Fm[map file]
/Fo<object file>                        /Fs[source listing file]
                            -PREPROCESSOR-
/C don't strip comments                 /D<name>[=text] define macro
/E preprocess to stdout                 /EP same as /E but no #line
/I<name> add #include path              /P preprocess to file
/U<name> remove predefined macro        /u remove all predefined macros
/X ignore "standard places"
                              -LANGUAGE-
/Za disable extensions                  /Zd line number information
/Ze enable extensions (default)         /Zg generate declarations
/Zi symbolic debugging information      /Zl remove default library info
/Zp[n] pack structs on n-byte boundary  /Zs syntax check only
                           -FLOATING POINT-
/FPa calls with altmath                 /FPc calls with emulator
/FPc87 calls with 8087 library          /FPi inline with emulator (default)
/FPi87 inline with 8087
                           -SOURCE LISTING-
/Sl<columns> set line width             /Sp<lines> set page length
/St<string> set title string            /Ss<string> set subtitle string
                           -MISCELLANEOUS-
/c compile only, no link                /H<number> external name length
/J default char type is unsigned        /Tc<file> compile file without .c
/V<string> set version string           /W<number> warning level
                              -LINKING-
/F<hex_number> stack size (hex. bytes)  /Lc link compatibility mode executable
/Lr link compatibility mode executable  /Lp link protect mode executable
/link [linker_options_and_libraries]