是否可以在不重新启动 Visual Studio 的情况下同时编译 32 位和 64 位配置?
Posted
技术标签:
【中文标题】是否可以在不重新启动 Visual Studio 的情况下同时编译 32 位和 64 位配置?【英文标题】:Is it possible to compile both 32-bit and 64-bit configurations without restarting Visual Studio? 【发布时间】:2009-11-16 08:56:45 【问题描述】:目前 Visual Studio 刚刚启动 cl.exe
用于 C++ 源代码编译。 cl.exe
需要位于%PATH%
环境变量中列出的文件夹之一中。
由于 cl.exe 有不同版本的 32 位和 64 位编译,为了在编译 64 位项目后编译 32 位项目,需要重新启动 Visual Studio。
典型的解决方案是有两个 .cmd 文件,每个文件都适当地设置 %PATH%,然后启动 Visual Studio。有不需要重启 Visual Studio 的解决方案吗?
【问题讨论】:
【参考方案1】:您不必重新启动。只需在您的解决方案和项目中设置两个“解决方案平台”(例如 Win32 和 x64)即可开始使用,因为 Visual Studio 会自动找到正确的工具。
【讨论】:
+1 - 我没有考虑两个平台,你的解决方案比我想象的要简单。 不,它不起作用。要么我设置了 %PATH% 并且它适用于一个(正确的)平台,要么我没有设置 %PATH% 并且它找不到 cl.exe。 那么您已经做了一些非常适合您的构建环境的事情。这根本不是默认行为。 确实;也许你把 PATH 弄得太乱了,以至于环境不再好了。要检查基本的东西是否仍然有效,请尝试您的项目是否使用 msbuild 构建,如果您对它有点熟悉的话。另请注意,为 VS 工具设置路径的正确方法是将平台作为参数运行 VSINSTALLDIR/VC/vcvarsall.bat。【参考方案2】:始终有 Build->Batch Build 命令,您可以在其中选择要构建的配置。
【讨论】:
【参考方案3】:目前 Visual Studio 仅启动 cl.exe 用于 C++ 源代码编译。 cl.exe 需要位于 %PATH% 环境变量中列出的文件夹之一中。
这不是真的。 VS 不依赖路径来定位 cl.exe(cl.exe 不在我的路径中,但是 VC++ 可以编译得很好,无论如何)。我认为它要么使用注册表,要么使用存储在 Tools/Options/Projects 和 Solutions/VC++ 目录中的配置。
由于 cl.exe 有不同版本的 32 位和 64 位编译,为了在编译 64 位项目后编译 32 位项目,需要重新启动 Visual Studio。
不,只是为项目创建不同的目标。
【讨论】:
以上是关于是否可以在不重新启动 Visual Studio 的情况下同时编译 32 位和 64 位配置?的主要内容,如果未能解决你的问题,请参考以下文章
是否可以在不购买 Visual Studio 许可证的情况下使用团队资源管理器进行版本控制?
启动SharePoint添加时,Visual Studio崩溃
打开VS2015提示“重新启动处于挂起状态。请在启动Visual Studio”之前重新启动
我的Visual Studio 2005安装好以后只要一启动就出提示“包加载失败”,不知道咋回事??