What 64bit target to choose when compiling with Visual Studio (vcvarsall.bat)?
Question
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?
Solution
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.
OTHER TIPS
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.