如果可能的话,有人知道如何在 Visual Studio 2008 中使用 Visual Studio 2010 附带的完整 c++ 工具集(编译器/链接器/sdk)吗?
更改“选项”->“项目和解决方案”->“VC++ 目录”下监听的所有目录就足够了,还是还有更多内容?假设我这样尝试,有什么注意事项吗?
我有点忘记这个问题了,直到今天一个朋友说 C++0x 有多棒。我仍然喜欢 VS2008,比 2010 更喜欢,因为 2010 最重要的是速度很慢,所以决定尝试一下。
而且,我仍然不敢相信,但只需最少的修改,它实际上就可以工作。
而且它工作得很好:在 VS2008 之前你甚至没有注意到它实际上使用的是 2010 工具集。除非你看 cl/link 的标志。当然,除非您突然能够使用 lambda。到目前为止我还没有发现任何问题。编辑等工作就像以前一样,构建工作,调试工作,这就是我所需要的。
这就是我所做的:
- 制作一个批处理文件,设置与 Windows SDK 7.1 / VS2010 工具集一起使用的环境,但从 VS2008 安装中保留 devenv。主要是从 2010 年的 setenv.cmd 复制的。
- 现在是脏的部分:将 msobj100.dll、mspdb100.dll、mspdbcore.dll 和 mspdbsrv.exe 复制到 2010 的 VSINSTALLDIR/bin 目录中(或将它们放入您的 PATH somweher 中)。这是必需的,否则 cl.exe 不起作用,调试也不起作用。
- 从运行批处理文件的同一命令行启动
devenv /useenv
- smile
这是 x64 机器使用的批处理文件:
SET PlatformToolset=Windows7.1SDK
SET ToolsVersion=4.0
SET WindowsSDKVersionOverride=v7.1
SET Path32=%ProgramFiles(x86)%
SET "VCINSTALLDIR=%Path32%\Microsoft Visual Studio 10.0\VC\"
SET "VSINSTALLDIR=%Path32%\Microsoft Visual Studio 10.0\"
SET "VCTools=%VCINSTALLDIR%Bin"
SET "VCTools=%VCTools%;%VCTools%\VCPackages;"
SET "VCLibraries=%VCINSTALLDIR%Lib"
SET "VCIncludes=%VCINSTALLDIR%INCLUDE"
SET Path=%FxTools%;%VSTools%;%VCTools%;%SdkTools%;%Path%
SET OSLibraries=%WindowsSdkDir%Lib
SET OSIncludes=%WindowsSdkDir%INCLUDE;%WindowsSdkDir%INCLUDE\gl
SET "LIB=%VCLibraries%;%OSLibraries%;%FxTools%"
SET "LIBPATH=%FxTools%;%VCLibraries%"
SET "INCLUDE=%VCIncludes%;%OSIncludes%"
EDIT除了将批处理文件与 /useenv 结合使用之外,还有另一种方法可以执行相同但更直接的操作:VC++ 目录的设置全部保存在文件 %APPDATA%/VisualStudio/9.0/VCComponents.dat 中。因此,如果您采用原始文件并将所有出现的 $(VCINSTALLDIR) 替换为 $(ProgramFiles)\Microsoft Visual Studio 10.0\VC\,它也可以工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)