2016-05-21 48 views
3

我安装了Visual Studio 2015,并且需要使用包含在SDK 7.1中的Visual C++ 2010编译器编译特定项目。在VS2015上使用sdk 7.1构建

我想在VS2015中使用2010编译器,无需安装VS2010。 因此,我安装了它(SDK),并在项目属性的“平台工具集”属性下显示了“Visual Studio 2010(v100)”,“Windows7.1SDK”选项。 但是,当我尝试生成项目,我得到这些错误:

随着 “Windows7.1SDK” -

1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\x64\Microsoft.Cpp.x64.Targets(146,5): error : Required file "" is missing. 

,并以 “Visual Studio 2010中(V100)” -

1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(297,5): warning MSB8003: Could not find WindowsSDKDir variable from the registry. TargetFrameworkVersion or PlatformToolset may be set to an invalid version number. 
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\x64\Microsoft.Cpp.x64.Targets(146,5): error : Required file "" is missing. 

想不通的问题是什么..

回答

0

我有同样的问题,2周,刚刚发现了一个解决方法,可以帮助:

在不修改任何东西到我的VS2010项目(不改变在vcxproj工具集),我使用命令行编译工具的MSBuild工具,指定作为开关使用的工具集为这里找到Building C++ project on a PC with Windows SDK 7.1 but without VS2010

msbuild /p:PateformToolset=Windows7.1SDK project.vcxproj

(在我的情况下,相应的MSBuild是在文件夹C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319)

如果MSBUILD抛出一个错误,告诉其丢失mspdb100.dll,您可能需要添加%PROGRAMFILES(X86)%\Microsoft Visual Studio 10.0\Common7\IDE\%PATH% env var。

最后,即使安装了visual C++更新后,您可能会缺少一些文件,如ammintrin.h(特别是如果像我一样尝试编译旧的InDesign插件)。 我在我的案例中发现的唯一(并且丑陋的)解决方法不涉及安装VS2010(MS的常见答案)是将缺少的包含从%PROGRAMFILES(X86)%\Microsoft Visual Studio 14.0\VC\include文件夹复制到%PROGRAMFILES(X86)%\Microsoft Visual Studio 10.0\VC\include

瞧!希望这可以帮助