fsharpc(1) manual page for F# 3.0 Compiler (Open Source Edition)


Compiler for the F# language, version 3.0


fsharpc [options...] file [file...]



--out:file, -o file
Name of the output file
Build a console executable
Build a Windows executable
--target:library, -a
Build a library
Build a module that can be added to another assembly
Delay-sign the assembly using only the public portion of the strong name key
Write the xmldoc of the assembly to the given file
Specify a strong name key file
Specify a strong name key container
Limit which platforms this code can run on: x86
, Itanium, x64, anycpu32bitpreferred, or anycpu.

The default is anycpu.

Only include optimization information essential for implementing inlined constructs. Inhibits cross-module inlining but improves binary compatibility.
Don't add a resource to the generated assembly containing F#-specific metadata
Print the inferred interface of the assembly to a file


--reference:file, -r file
Reference an assembly


Specify a Win32 resource file (.res)
Specify a Win32 manifest file
Do not include the default Win32 manifest
Embed the specified managed resource
Link the specified resource to this assembly


--debug[+|-], -g
Emit debug information
Specify debugging type: full, pdbonly. full is the default and enables attaching a debugger to a running program.
--optimize[+|-], -O
Enable optimizations
Enable tailcalls
Enable cross-module optimizations


Report all warnings as errors
Report specific warnings as errors
Set a warning level (0-5)
Disable specific warning messages
Enable specific warnings that may be off by default
Output warning and error messages in color


Generate overflow checks
--define:string, -d string
Define conditional compilation symbols
Ignore ML compatibility warnings


Suppress compiler copyright message
--help, -?
Display this usage message


Specify the codepage used to read source files
Output messages in UTF-8 encoding
Output messages with fully qualified paths
--lib:dir[;dir[;...]], -I dir[;dir[;...]]
Specify a directory for the include path which is used to resolve source files and assemblies
Base address for the library to be built
Do not reference the default CLI assemblies by default
Statically link the F# library and all referenced DLLs that depend on it into the assembly being generated
Statically link the given assembly and all referenced DLLs that depend on this assembly. Use an assembly name e.g. mylib, not a DLL name.
Use a resident background compilation service to improve compiler startup times.
Name the output debug file
Resolve assembly references using directory-based rules rather than MSBuild resolution
Enable high-entropy ASLR
Specify subsystem version of this assembly