VS2013使用NuGet进行增强

问题描述 投票:15回答:4

我已经尝试了几天来推动我的Visual Studio 2013 Premium安装工作。我尝试使用zip安装,现在使用NuGet。这两种方法都让我遇到了链接器错误的同一点。

错误:1> LINK:致命错误LNK1104:无法打开文件'libboost_system-vc120-mt-gd-1_57.lib'

我查看了邮件列表以获取提升,发现有人发布了类似的问题,但那是2012年的boost_1_54_0或者其他内容,因此与VS2013或提升1_58_0无关。

我还看了一些论坛帖子,包括SO,但没有一个我有同样的问题。要么就是这样,要么就是没有回复。

我无法真正辨别错误显示的任何标志,因为这是我第一次使用除STL库或我自己的标头以外的任何其他标志。

任何和所有的帮助将不胜感激,请告诉我是否有任何其他有用的信息。

c++ boost visual-studio-2013 nuget
4个回答
24
投票

我怀疑你安装了名为“boost”的NuGet包。这似乎包含所有Boost标头,但没有编译库。如果您只对仅使用标题的Boost库(即大多数)感兴趣,那就没问题。

你真正想要的是名为“boost-vc120”的软件包(vc120指的是VC ++ 12.0,它是VS2013附带的VC ++版本)。这也有所有的库。您会注意到安装需要更长的时间。

在任何一种情况下,NuGet都会负责设置所有必要的VC ++目录设置。无需进一步配置。


3
投票

Boost NuGet包的结构是here。你可以使用boost-vc120,但它会将所有的boost库下载到你的项目中。因此,如果您想节省磁盘空间,请使用boost包,它提供了头文件和特定的二进制包。在你的情况下,它是boost_system-vc120

您无法删除boost包,因为二进制包(例如boost-vc120 / boost_system-vc120)依赖于它。


0
投票

文件libboost_system-vc120-mt-gd-1_57.lib是否存在于您的硬盘上?

如果是,是否将.lib添加到链接器/输入/附加依赖项?


-1
投票

转到以下网页:

https://github.com/sergey-shandar/getboost

从那里你可以找到“NuGet Packages for Boost”。有多个链接。

如果您选择第一个链接 - 您将获得boost-includes nuget-package说明。基本上你需要在Visual Studio中打开Package manager,选择正确的项目,然后输入命令“Install-Package boost -Version 1.69.0” - 它将启用boost包括自动下载到“packages”文件夹。

通过关注其他链接,您可以获得特定Visual Studio的boost静态库 - 按照“boost-vc141”获取Visual Studio 2017静态库。

这个boost包将获得大量的boost库 - 如果你不需要所有这些库 - 制作临时项目,获得boost静态库,并复制你自己需要的粘贴库。

© www.soinside.com 2019 - 2024. All rights reserved.