Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将旧的NuGet包与现代Visual Studio工具集一起使用 我正在处理C++项目中的NuGET包管理器,遇到了一个问题。在我的VS 2017 RC中,有平台工具集v.141项目,我添加了两个包——GLEW和GLFW。我成功地包含了相应的标题,但无法链接我的项目-显然这些包不是为VS2017构建的_C++_Visual Studio_Nuget_Version - Fatal编程技术网

将旧的NuGet包与现代Visual Studio工具集一起使用 我正在处理C++项目中的NuGET包管理器,遇到了一个问题。在我的VS 2017 RC中,有平台工具集v.141项目,我添加了两个包——GLEW和GLFW。我成功地包含了相应的标题,但无法链接我的项目-显然这些包不是为VS2017构建的

将旧的NuGet包与现代Visual Studio工具集一起使用 我正在处理C++项目中的NuGET包管理器,遇到了一个问题。在我的VS 2017 RC中,有平台工具集v.141项目,我添加了两个包——GLEW和GLFW。我成功地包含了相应的标题,但无法链接我的项目-显然这些包不是为VS2017构建的,c++,visual-studio,nuget,version,C++,Visual Studio,Nuget,Version,在packages//build/native/lib中有几个v子文件夹:用于GLEW的v100、v110和用于GLFW的v100、v110、v120、v140。据我所知,这些包含根据相应的VS工具集编译的二进制文件。如果我将我的项目的平台工具集从v141更改为v140,我还安装了VS 2015,GLFW链接错误将消失,因为VS从GLFW包中找到了相应的二进制文件,但GLEW仍然没有链接-我既没有v110工具集,也不想在那里降级 P>有一种方法将一个旧的NuGeC++包链接到一个具有现代平台工

在packages//build/native/lib中有几个v子文件夹:用于GLEW的v100、v110和用于GLFW的v100、v110、v120、v140。据我所知,这些包含根据相应的VS工具集编译的二进制文件。如果我将我的项目的平台工具集从v141更改为v140,我还安装了VS 2015,GLFW链接错误将消失,因为VS从GLFW包中找到了相应的二进制文件,但GLEW仍然没有链接-我既没有v110工具集,也不想在那里降级


<> P>有一种方法将一个旧的NuGeC++包链接到一个具有现代平台工具集的项目吗?如果可以的话,我可以很好地从源构建包,只要它保持一个NuGET包,它可以自动地管理到某个点。

< P>我们不能将一个旧的NuGeC++包链接到一个具有现代平台工具集的项目。 Visual Studio支持多个平台工具集,但现代平台工具集不向后兼容。因此,在VS 2015中使用平台工具集v140时,GLEW的v100、v110将生成链接错误

在Visual Studio 2015中使用v100、v110 for GLEW的最佳方法是安装v110工具集,并使用它来维护二进制兼容的遗留代码

有关为旧平台配置程序的详细信息,请参阅:

似乎没有包含v141平台工具集的软件包。通过编辑packages\googletest.1.8.0.0\build\native\googletest.targets中包含的配置,您始终可以针对v141项目强制链接v140目标二进制文件:

<ItemDefinitionGroup Label="Win32 and v140 and Release" Condition="'$(Platform.ToLower())' == 'win32' And '$(PlatformToolset.ToLower())' == 'v140' And ( $(Configuration.ToLower().IndexOf('debug')) == -1 )"> 

但你的想法可能会有所不同

<ItemDefinitionGroup Label="Win32 and v140 and Release" Condition="'$(Platform.ToLower())' == 'win32' And '$(PlatformToolset.ToLower())' == 'v141' And ( $(Configuration.ToLower().IndexOf('debug')) == -1 )">