使用较新版本的MSVC链接旧版本的运行时?

时间:2011-01-11 15:31:28

标签: c++ visual-studio

我拥有VS 2008 Pro,并希望与VS 2005的运行时MSVCRT80进行兼容性测试,但我不想仅仅为此购买它。有没有办法在不获取VS 2005的情况下链接MSVCRT80?

由于

2 个答案:

答案 0 :(得分:5)

直到Visual Studio 2010才显示对native multi-targeting的官方支持,后者允许您选择v100或v90作为“平台工具集”。 Visual Studio 2008中没有此类功能。

这里有关于one can achieve the same effect in Visual Studio 2008的讨论,但似乎你需要在你的计算机上安装VS 2005才能实现这一点。如果您只安装了运行时库,那么它将不起作用,因为您需要适当版本的编译器和链接器,只有在安装VS 2005时才能使用。

就此而言,我不太确定“兼容性测试”是什么意思。如果您在VS 2008中针对v90编译应用程序,则它不适用于旧版本的运行时。您必须编译并链接您希望应用程序使用的版本。

最后,考虑它是否真的相关。从must include MSVCRT with your application anyway开始,尝试链接旧版本的运行时有什么好处?只需包含v90即可完成。

答案 1 :(得分:0)

仍在工作的链接(截至2011年1月11日)可以在此处找到Visual C ++ Express 2005的Microsoft下载:

这可以让你编译VS2005运行时而无需购买任何东西。

(如果blogspot文章消失,.iso的链接为http://go.microsoft.com/fwlink/?linkid=57034)。