2012-07-27 13 views
6

[スタート]ボタンのVisual Studio 2010メニューに表示される「Visual Studio x64 win64コマンドプロンプト」、「Visual Studio x64クロスツールコマンドプロンプト」、および「Visual Studioコマンドプロンプト」の違いは何ですか?VS2010のさまざまなコマンドシェルの違いは何ですか?

最も有用な答えについては、私の無知のレベルについてはっきりさせてください。私は一般的にMicrosoftやIDEの何かを指導するよりも、 Linuxの長年の専門家、プレーンテキストエディタ、手作りのMakefilesなどでソースを編集してください。

VS2010で控えめな経験をお持ちの方には違いが簡単かもしれません。あなたは簡単にcl.exeと他のビルドツールを実行できるように

+0

だけの環境変数が、私はどれぶっきらぼう知りません。 'env'を実行して結果を比較してみてください。 – Frobzig

+1

@Frobzig:Windowsのコマンドシェルでは、必要なコマンドは 'env'ではなく' set'です。 –

答えて

4

異なるバッチファイルはPATHLIBINCLUDELIBPATHを調整します。

+0

しかし、なぜ3つのバリエーションですか? – DarenW

+8

64ビットマシンでx64バージョンを実行した後、64ビットオブジェクトファイルをビルドし、絶対パスを指定せずに64ビットライブラリにリンクすることができます。これらはすべて環境変数に含まれているためです。クロスツールは、32ビットマシン上に64ビットバイナリを構築するためのもので、最後は32ビットビルド用です。 – IronMensan

+4

それは答えではなく、コメントでなければなりません。 – DarenW

1

この回答は主にVS2013に焦点を当てています。 Microsoftのドキュメントhttp://msdn.microsoft.com/en-us/library/ms229859%28v=vs.110%29.aspxの状態:

Visual Studio 2010以降、Visual Studioのバージョンおよびインストールした追加のSDKによっては、複数のコマンドプロンプトが表示されることがあります。たとえば、Visual Studioの64ビットバージョンでは、32ビットと64ビットの両方のコマンドプロンプトが提供されます。 (ほとんどのツールの32ビットおよび64ビットバージョンは同じであるが、いくつかのツールは、32ビットと64ビットの環境に固有の変更を行う。)

をそれが追加、むしろunhelpfully

個々のツールのマニュアルを参照して、使用するコマンドプロンプトのバージョンを確認してください。

ページhttp://msdn.microsoft.com/en-us/library/jj153218.aspxリスト5つの、コマンドプロンプト:

  • VS2013 ARMクロスツールプロンプト
  • VS2013のx64クロスツールプロンプト
  • VS2013をコマンドコマンドVS2013のため

    • 開発者のコ​​マンドプロンプトx64ネイティブツールコマンドプロンプト
    • VS2013 x86ネイティブツールには、コマンドプロンプト
    • 私のマシン、唯一の第一、第三、およびこれらが存在している、と彼らはそれぞれ、起動の5日

    %のCOMSPECの%/ K "" C:\プログラムファイルVisual Studio 12.0 \ VC \ vcvarsall.bat "" x86_amd64 %Visual Studio 12.0 \ Common7 \ Tools \ VsDevCmd.bat " %comspec%/ k" 「comspec%/ k」「C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ VC \ vcvarsall.bat」「x86

    を実行するには最初の "x86ネイティブ"シェルのコマンドは、私のマシン上でと同じの結果を返します。そして、mmohamadの答えtp Difference between VsDevCmd.bat & vcvarsall.bat in VS2012はこれに同意します。

    しかし、「x64の十字架」は違います。違いは(簡潔にするためPathLIBPATHを除く)されています。おそらく

    + CommandPromptType=Cross 
    + FrameworkDIR64=C:\WINDOWS\Microsoft.NET\Framework64 
    + FrameworkVersion64=v4.0.30319 
    + Platform=x64 
    - LIB=C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\LIB;C:\Program Files (x86)\Windows Kits\8.1\lib\winv6.3\um\x86; 
    + LIB=C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\LIB\amd64;C:\Program Files (x86)\Windows Kits\8.1\lib\winv6.3\um\x64; 
    
  • 関連する問題