コンパイラ オプション (F#)

このトピックでは、F# コンパイラ (fsc.exe) のコマンド ライン オプションについて説明します。 コンパイル環境は、プロジェクトのプロパティを設定して制御することもできます。

アルファベット順のコンパイラ オプション

次の表は、コンパイラ オプションのアルファベット順の一覧です。 一部の F# コンパイラ オプションは C# コンパイラ オプションに似ています。 それらについては、C# コンパイラ オプションのトピックへのリンクも示してあります。

コンパイラ オプション

説明

-a <output-filename>

ライブラリを生成し、そのファイル名を指定するために使用します。 このオプションは、--target:library <filename> の省略形です。

--baseaddress:<string>

ビルドするライブラリのベース アドレスを指定するために使用します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/baseaddress (C# コンパイラ オプション)」を参照してください。

--codepage:<int>

ソース ファイルの読み取りに使用するコードページを指定するために使用します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/codepage (C# コンパイラ オプション)」を参照してください。

--crossoptimize[+|-]

モジュール間の最適化を有効または無効にします。

--delaysign[+|-]

厳密名キーのうち、公開キーのみを使用した遅延署名をアセンブリに適用するために使用します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/delaysign (C# コンパイラ オプション)」を参照してください。

--checked[+|-]

オーバーフロー チェックの生成を有効または無効にするために使用します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/checked (C# コンパイラ オプション)」を参照してください。

--debug[+|-]

-g[+|-]

--debug:[full|pdbonly]

-g: [full|pdbonly]

デバッグ情報の生成を有効または無効にするために使用します。生成するデバッグ情報の種類も指定できます。 既定値は、実行中のプログラムにアタッチできる full です。 pdb (プログラム データベース) ファイルに格納するデバッグ情報を制限する場合は、pdbonly を選択します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、次のトピックを参照してください。

/debug (C# コンパイラ オプション).

--define:<string>

-d:<string>

条件付きコンパイルで使用する記号を定義するために使用します。

--doc:<xmldoc-filename>

指定したファイルに XML ドキュメント コメントを生成するようにコンパイラに指示するために使用します。 詳細については、「XML ドキュメント (F#)」を参照してください。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/doc (C# コンパイラ オプション)」を参照してください。

--fullpaths

エラーが発生したファイルの絶対パスを生成するようコンパイラに指示するために使用します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/fullpaths (C# コンパイラ オプション)」を参照してください。

--help

-?

使用方法を表示するために使用します。すべてのコンパイラ オプションの簡単な説明が表示されます。

--keycontainer:<string>

厳密名キー コンテナーを指定するために使用します。

--keyfile:<filename>

生成されるアセンブリの署名に使用する公開キー ファイルの名前を指定するために使用します。

--lib:<folder-name>

-I:<folder-name>

参照されるアセンブリを検索するディレクトリを指定するために使用します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/lib (C# コンパイラ オプション)」を参照してください。

--linkresource:<resource-info>

指定したリソースをアセンブリにリンクするために使用します。 resource-info の形式は次のとおりです。filename[,name[,public |private]]

このオプションを使用すると、--resource オプションでリソース ファイル全体を埋め込む代わりに 1 つのリソースをリンクできます。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/linkresource (C# コンパイラ オプション)」を参照してください。

--mlcompatibility

他のバージョンの ML との互換性維持を目的に設計された機能を使用するときに、表示される警告を無視するために使用します。

--noframework

.NET Framework アセンブリへの既定の参照を無効にするために使用します。

--nointerfacedata

F# 固有のメタデータを含むアセンブリに通常は追加されるリソースを省略するよう、コンパイラに指示するために使用します。

--nologo

コンパイラの起動時に著作権情報が表示されないようにします。

--nooptimizationdata

インライン構成要素の実装に必要な場合にのみ最適化を行うよう、コンパイラに指示するために使用します。 モジュール間のインライン展開は実行されなくなりますが、バイナリ互換性が向上します。

--nowin32manifest

既定の Win32 マニフェストを省略するようコンパイラに指示するために使用します。

--nowarn:<int-list>

番号で指定した特定の警告を無効にします。 それぞれの警告番号はコンマで区切ります。 警告の警告番号はコンパイルの出力で確認できます。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/nowarn (C# コンパイラ オプション)」を参照してください。

--optimize[+|-] [<string-list>]

-O[+|-] [<string-list>]

最適化を有効または無効にするために使用します。 一部の最適化オプションについては、選択して指定したものだけを無効または有効にすることができます。 これには、nojitoptimize、nojittracking、nolocaloptimize、nocrossoptimize、notailcalls があります。

--out:<output-filename>

-o:<output-filename>

コンパイルしたアセンブリまたはモジュールの名前を指定するために使用します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/out (C# コンパイラ オプション)」を参照してください。

--pdb:<pdb-filename>

出力デバッグ PDB (プログラム データベース) ファイルに名前を付けます。 このオプションは、--debug も有効にした場合にのみ適用されます。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/pdb (C# コンパイラ オプション)」を参照してください。

--platform:<platform-name>

生成されたコードが、指定したプラットフォーム (x86、Itanium、または x64) でのみ実行されることを指定するために使用します。platform-name で anycpu が選択されている場合は、生成されたコードをどのプラットフォームでも実行できることを示します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/platform (C# コンパイラ オプション)」を参照してください。

--reference:<assembly-filename>

-r <assembly-filename>

コンパイルするコードで F# または .NET のアセンブリのコードを使用できるようにするために使用します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/reference (C# コンパイラ オプション)」を参照してください。

--resource:<resource-filename>

生成されるアセンブリにマネージ リソース ファイルを埋め込むために使用します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/resource (C# コンパイラ オプション)」を参照してください。

--sig:<signature-filename>

生成されるアセンブリに基づいてシグネチャ ファイルを生成するために使用します。 シグネチャ ファイルの詳細については、「シグネチャ (F#)」を参照してください。

--simpleresolution

MSBuild の解決方法ではなくディレクトリベースの Mono 規則を使用して解決する必要がある、アセンブリ参照を指定するために使用します。 既定では、Mono で実行する場合を除き、MSBuild の解決方法が使用されます。

--standalone

F# ライブラリと、コンパイルされるコードが依存するすべての参照 DLL を、生成されるアセンブリに静的にリンクする場合に指定します。

--staticlink:<assembly-name>

指定したアセンブリと、そのアセンブリに依存するすべての参照 DLL を静的にリンクするために使用します。 DLL 名ではなく、アセンブリ名を使用します。

--tailcalls[+|-]

tail IL 命令の使用を有効または無効にします。有効にすると、スタック フレームが tail 再帰関数で再利用されます。 このオプションの既定値はオンです。

--target:[exe | winexe | library | module ] <output-filename>

生成されるコンパイル済みコードの種類とファイル名を指定するために使用します。

  • exe はコンソール アプリケーションを表します。

  • winexe は Windows アプリケーションを表します。コンソール アプリケーションとの違いは、標準入出力ストリーム (stdin、stdout、および stderr) が定義されていないことです。

  • library は、エントリ ポイントのないアセンブリです。

  • moduleは .NET モジュール (. netmodule) です。後で他のモジュールと組み合わせて、1 つのアセンブリにまとめることができます。

  • このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/target (C# コンパイラ オプション)」を参照してください。

--times

コンパイルのタイミング情報を表示します。

--utf8output

UTF-8 エンコーディングでのコンパイラ出力を有効にするために使用します。

--warn:<warning-level>

警告レベル (0 ~ 4) を設定します。 各警告には、重大度に基づいてレベルが設定されます。 レベル 0 よりもレベル 4 の方が警告の数が多く、重大度が低いものまで表示されます。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/warn (C# コンパイラ オプション)」を参照してください。

--warnaserror[+|-] [<int-list>]

警告をエラーとして報告するオプションを有効または無効にするために使用します。 特定の警告番号を指定して無効または有効にすることができます。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/warnaserror (C# コンパイラ オプション)」を参照してください。

--win32res:resource-filename

Win32 リソース ファイルをコンパイルに追加するために使用します。

このコンパイラ オプションは、同じ名前の C# コンパイラ オプションに相当します。 詳細については、「/win32res (C# コンパイラ オプション)」を参照してください。

関連トピック

タイトル

説明

F# Interactive オプション

F# インタープリター (fsi.exe) でサポートされるコマンド ライン オプションについて説明します。

プロジェクトに関するユーザー インターフェイス要素

ビルド オプションを提供するプロジェクトのプロパティのページなど、プロジェクトの UI について説明します。