6

安装 VS2012 后,我看到许多命令提示符类型

  1. VS2012 的开发者命令提示符
  2. VS2012 ARM 交叉工具命令提示符
  3. VS2012 x64 跨工具命令提示符
  4. VS2012 x86 原生工具命令提示符
  5. VS2012 x64 原生工具命令提示符

它们是什么,在什么情况下我应该使用一个而不是另一个?

我在 SO 上阅读了这个和许多答案,但它们似乎都模棱两可

4

2 回答 2

7

不同的命令提示符是设置路径等的快捷方式,因此您只需调用“cl.exe”或“link.exe”和其他相关工具即可从命令行构建。

2-5 是不言自明的 - 如果您运行cl.exe blah.cpp,则每个窗口调用的 cl [和相关工具] 的版本将不同:

2) 生成arm代码的编译器

3) 生成 64 位代码的 32 位编译器

4) 生成 32 位代码的 32 位编译器

5) 生成 64 位代码的 64 位编译器

如果您不从命令行编译,只需使用数字 1,这将设置非平台特定工具 - 例如 tf.exe。如果您确实从命令行编译,请从 2-5 中选择,具体取决于您的目标平台[在 2 或 4 的情况下,您当前正在运行的 Windows 的位数]。

于 2013-06-20T22:04:27.613 回答
2

当您从命令行构建本机代码时,它们很重要。就像用 C、C++、C++/CLI 或 C++/CX 语言编写的代码一样。此类项目高度依赖于目标体系结构,因为代码直接转换为机器代码。需要正确选择它们的工具,例如编译器、链接器和库。并且您使用 MSBuild.exe 以外的构建工具。就像 makefile 或直接运行工具一样。

.NET 项目中使用的一些工具也依赖于体系结构。像 Regasm.exe。尽管您倾向于使用完整路径直接运行它们,而不是依靠“开始”菜单快捷方式来正确设置 PATH。如有疑问,请键入“where toolname.exe”,当您在命令提示符下键入它的名称而没有完整路径时,它将显示将使用哪个 toolname.exe。

于 2013-06-20T22:37:02.527 回答