csc.exe を使用したコマンド ラインからのビルド

実行可能ファイルの名前 (csc.exe) のように入力して、コマンド プロンプトで、C コンパイラを起動できます。

[Visual Studio コマンド プロンプト] のウィンドウを使用すると、必要な環境変数は自動的に設定されます。Windows 7 では、Microsoft Visual Studio [バージョン]の\Visual Studio のツールのフォルダーを開いて、[開始] のメニューからそのウィンドウにアクセスできます。Windows 8 では、Visual Studio コマンド プロンプトは [VS2012 の開発者コマンド プロンプト] と呼ばれ、画面を最初から検索することによってこれを検索できます。

標準コマンド プロンプト ウィンドウを使用すると、そのコンピューターのサブディレクトリから csc.exe を開始する前に、パスを調整する必要があります。また、コマンド ラインのビルドに必要な環境変数を設定する vsvars32.bat を実行する必要があります。方法の手順と実行を含む vsvars32.bat の詳細については、検索、方法: 環境変数を設定するが表示されます。

Windows Software Development Kit (SDK)だけあるコンピューターでは、[Microsoft .NET Framework SDK] のメニュー オプションから開く [SDK Command Prompt] で、C コンパイラを使用できます。

また、C のプログラムをプログラムでビルドに MSBuild を使用できます。詳細については、「MSBuild」を参照してください。

実行可能ファイル csc.exe ファイルは、通常、Windows ディレクトリの下の Microsoft.NET\Framework\[バージョン] フォルダーにあります。この位置は、特定の厳密なコンピューターの構成によって異なる場合があります。.NET Framework の複数のバージョンがコンピューターにインストールされている場合、このファイルの複数のバージョンを検索します。このようなインストールの詳細については、「インストールされている .NET Framework バージョンの確認」を参照してください。

ヒントヒント

Visual Studio IDE を使用してプロジェクトをビルドすると、[出力] のウィンドウの [csc] のコマンドと関連するコンパイラ オプションを表示できます。この情報を表示するには、[標準][詳細] にログ データのレベルの詳細度を変更する 方法: ビルド ログ ファイルを表示、保存、および構成する の指示に従います。プロジェクトをビルドし直した後、コンパイラ、C の呼び出しを検索するには [csc][出力] のウィンドウを検索してください。

このトピックの内容

  • コマンド ライン構文の規則

  • コマンド ラインの例

  • C# コンパイラと C++ コンパイラの出力の相違点

C# コンパイラのコマンド ライン構文の規則

C# コンパイラは、オペレーティング システムのコマンド ラインで指定された引数を次の規則に従って解釈します。

  • 引数は、空白 (スペースまたはタブ) で区切ります。

  • キャレット (^) は、エスケープ文字やデリミターとしては認識されません。キャレットは、オペレーティング システムのコマンド ライン パーサーによって処理されてからプログラムの argv 配列に渡されます。

  • 二重引用符で囲まれた文字列 ("string") は、空白を含む場合でも、単一の引数と見なされます。二重引用符で囲んだ文字列を引数に埋め込むこともできます。

  • 円記号を前に付けた二重引用符 (\") は、リテラル二重引用符文字 (") として解釈されます。

  • 二重引用符の直前にある円記号以外は、円記号 (\) として解釈されます。

  • 二重引用符の直前に円記号が偶数個 (0 個は含まない) あると、円記号のペアごとに 1 個の円記号が argv 配列に格納されます。この場合、二重引用符は文字列のデリミターとして解釈されます。

  • 二重引用符の直前に円記号が奇数個 (3 個以上) あると、円記号のペアごとに 1 個の円記号が argv 配列に格納されます。この場合、二重引用符は残った円記号によりエスケープ シーケンスになります。これにより、リテラル二重引用符 (") が argv に追加されます。

C# コンパイラのコマンド ラインのサンプル

  • File.cs をコンパイルして File.exe を作成します。

    csc File.cs 
    
  • File.cs をコンパイルして File.dll を作成します。

    csc /target:library File.cs
    
  • File.cs をコンパイルして My.exe を作成します。

    csc /out:My.exe File.cs
    
  • 最適化を有効にし、DEBUG シンボルを定義して、現在のディレクトリにあるすべての C# ファイルをコンパイルします。File2.exe が出力されます。

    csc /define:DEBUG /optimize /out:File2.exe *.cs
    
  • 現在のディレクトリにあるすべての C# ファイルをコンパイルして、デバッグ バージョンの File2.dll を作成します。ロゴや警告は表示されません。

    csc /target:library /out:File2.dll /warn:0 /nologo /debug *.cs
    
  • 現在のディレクトリにあるすべての C# ファイルをコンパイルして、Something.xyz (DLL) に出力します。

    csc /target:library /out:Something.xyz *.cs
    

C# コンパイラと C++ コンパイラの出力の相違点

、C のコンパイラを起動して作成されたオブジェクト (.obj) ファイルはありません; 出力ファイルは直接作成されます。このため、C# コンパイラにはリンカーが不要です。

参照

処理手順

方法: コマンド ライン引数を表示する (C# プログラミング ガイド)

方法: foreach を使用してコマンド ライン引数にアクセスする (C# プログラミング ガイド)

関連項目

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

カテゴリ別の C# コンパイラ オプションの一覧

コマンド ライン引数 (C# プログラミング ガイド)

Main() の戻り値 (C# プログラミング ガイド)

概念

Main() とコマンド ライン引数 (C# プログラミング ガイド)

その他の技術情報

C# コンパイラ オプション