Какую 64-битную цель выбрать при компиляции с помощью Visual Studio (vcvarsall.bat)?
Вопрос
А vcvarsall.bat
это позволяет настройке среды сборки выбирать между x86 | ia64 | amd64 | x86_amd64 | x86_ia64
.
Первый вариант очевиден для 32-битной версии, но вопрос в следующем:какой вариант будет оптимальным между остальными четырьмя, если вы хотите собрать 64-битную версию и хотите работать на всех 64-битных машинах.
Допустим, у вас нет времени/ресурсов делать 4 билда на 64 и вам нужно выбрать только один из них?
Решение
Я нашел страницу, которая разъясняет эту проблему http://msdn.microsoft.com/en-us/library/x4d2c09s%28VS.80%29.aspx
- 32/64 сборка ОС для 32 =>
x86
- 32 сборка ОС для 64 =>
x86_amd64
- 64 сборка ОС для 64 =>
amd64
И вы можете игнорировать другие варианты, потому что Itanium не имеет реальной доли рынка.
Другие советы
ia64 (Itanium) — это очень избыточный процессор (Google для доли рынка ia64), и вам следует использовать его только в том случае, если вы собираетесь выполнять развертывание на этой архитектуре.
x86_amd предназначен для запуска 32-разрядной версии на архитектуре amd64, используйте его только в том случае, если ваш код не компилируется/не работает под amd64.