VC++ 2008 Standard Editionで何故?

|

VC++ 2008の「Standard Edition」と「Express Edition」で動作が異なったため、「cl.exe」のインストール位置を確認したところ、

・VC++ 2008 Express Editionでは

 C:\Program Files\Microsoft Visual Studio 9.0\VC\bin

フォルダ内にありました。が、

・VC++ 2008 Standard Editionでは、何故か

 C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\x86_amd64
 C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\amd64

の2つのフォルダがあり、「cl.exe」が2つ存在していました。

それぞれのフォルダに移動して、clコマンドを実行すれば、当然コンパイルが行われますが、リンカー辺りで別の問題が発生します。

DVDで「復旧/再インストール」を実行しても同じ現象ですので、更からインストールをやり直します。


因みに、cl.exe(VC++コンパイラ)には、様々なバージョンがあるようで、

マシンのCPU   ターゲットCPU   インストールされるコンパイラ   SDKの選択
X86        X86         X86 ネイティブコンパイラ     X86
X86        X64         X86_amd64 クロスコンパイラ    X64
X86        IA64         X86_IA64 クロスコンパイラ     IA64
X64        X64         X64 ネイティブコンパイラ     X64
X64        X86         X86_amd64 クロスコンパイラ    X86
X64        IA64         X86_IA64 クロスコンパイラ     IA64
IA64        IA64         IA64 ネイティブコンパイラ     IA64
IA64        X86         X86_IA64 クロスコンパイラ     X86
IA64        X64         X86_amd64 クロスコンパイラ    X64


x86 on x86
x86 マシン用の出力ファイルを作成します。cl.exe のこのバージョンは、x86 マシン上ではネイティブの 32 ビット プロセスとして、64 ビットのWindowsオペレーティング システムでは WOW64 により 32 ビット プロセスとして実行されます。

x64 on x64
x64 用の出力ファイルを作成します。cl.exe のこのバージョンは、x64 マシン上ではネイティブのプロセスとして実行されます。

Itanium on Itanium
Itanium 用の出力ファイルを作成します。cl.exe のこのバージョンは、Itanium マシン上ではネイティブのプロセスとして実行されます。

x64 on x86(x64クロス コンパイラ)
x64 用の出力ファイルを作成します。cl.exe のこのバージョンは、x86 マシン上ではネイティブの 32 ビット プロセスとして、64 ビットのWindowsオペレーティング システムでは WOW64 により 32 ビット プロセスとして実行されます。

Itanium on x86(Itaniumクロス コンパイラ)
Itanium 用の出力ファイルを作成します。cl.exe のこのバージョンは、x86 マシン上ではネイティブの 32 ビット プロセスとして、64 ビットのWindowsオペレーティング システムでは WOW64 により 32 ビット プロセスとして実行されます。

となっているようです。