views:

412

answers:

2

The vcvarsall.bat that does setup de build environment let you choose between x86 | ia64 | amd64 | x86_amd64 | x86_ia64.

First option is obvious for 32bit, but the question is: what would be the optimal option between the other 4 if you want to build for 64bit and you want to run on all 64 bit machines.

Let say that you don't have time/resources to make 4 builds for 64 and you have to choose only one of them?

A: 

ia64 (Itanium) is a very redundant CPU (Google for ia64 market share) and you should use it only if you're going to deploy to that architecture.

x86_amd is for running 32 bit on amd64 architecture, use it only if your code doesn't compile/work under amd64.

Shay Erlichmen
I already found a page on MSDN describing this. Regarding Itanium you are right.
Sorin Sbarnea
+2  A: 

I found a page that clarifies this issue http://msdn.microsoft.com/en-us/library/x4d2c09s%28VS.80%29.aspx

  • 32/64 OS building for 32 => x86
  • 32 OS building for 64 => x86_amd64
  • 64 OS building for 64 => amd64

And you can ignore the other options because Itanium does not have a real market share.

Sorin Sbarnea