【问题标题】:Installing boost 1.52 with VS2012用 VS2012 安装 boost 1.52
【发布时间】:2013-09-13 23:03:15
【问题描述】:

我按照这些说明安装了 boost 并编译了所有库:

https://www.quantnet.com/threads/tutorial-quantlib-boost-installation-in-visual-studio-2012.11891/

Boost 安装 Boost 库可以在这里下载。 目前,可用的最新版本是 Boost 1.52.0。你可以建立 按照此处的说明进行提升。

您可以下载的替代方案 从这里预建的库。下载后,将安装程序复制到 Boost 1.52.0 文件夹并运行它。将文件夹重命名为 lib 一次 完成。

所以我下载了 boost 1.52,然后将其复制到 C:\Program Files (x86)\boost\

然后我下载了 1.52 64 位安装程序,下载后粘贴到:

C:\Program Files (x86)\boost\boost_1_52_0\boost_1_52_0\

我执行了安装程序 - 它说“正在提取”,然后是许多库名称。

然后我将最后一个文件夹重命名为 lib,这样我就有了:

C:\Program Files (x86)\boost\boost_1_52_0\lib\

在我的 VS2012 中,我将之前的目录添加到我的项目中。然后项目开始通过库解析,我没有链接器错误。但是,在构建项目时,我仍然得到:

LINK:致命错误 LNK1104:无法打开文件 'libboost_date_time-iw-mt-gd-1_52.lib'

(我项目中boost的唯一用法是file_mapping和mapped_region)

帮助?

编辑:我知道一些库需要在 boost 中单独编译。我以为上面是为了实现这个?如果没有,有人可以告诉我怎么做,因为这真的很痛苦。

【问题讨论】:

    标签: c++ boost


    【解决方案1】:

    Boost 有一些库(大部分)用作源头文件(.h 文件),不需要预编译,但也有一些库需要预编译(.lib 文件)。您可以从 Boost 网站 (http://www.boostpro.com/download/) 下载预编译的库,尽管您可能会从那里获得一些旧版本,或者您自己编译它们(最新版本或您想要的任何可用版本),尽管请请记住,这可能需要一些时间,具体取决于您的计算机规格。更多信息请看这里:http://www.boost.org/doc/libs/1_54_0/libs/regex/doc/html/boost_regex/install.html

    下载“普通”的boost包后,把解压出来的文件夹/文件放到一个文件夹里,然后在VS2012中把文件夹路径放在里面关联起来

    (您的项目 > 右键单击​​ > 首选项 >)常规 > VC++ 目录 > 包含目录

    然后下载并安装预编译好的库(解压到一个文件夹中),然后把这个文件夹和VS关联起来,在

    (YourProject > Right-Click > Preferences >) Linker > General > Additional Library Directories.

    当然,如前所述,你也可以编译你想要的包,然后用同样的方法将它们与 Visual Studio 关联起来。

    【讨论】:

    • 这些库没有与包一起预编译。您可以下载它们预编译或自己编译它们,以获得这些 .lib 文件。请再看我的回答,我已经更新了。
    • 我不确定,因为我已经将 1.47 传递给 VS2010 预编译,并且还为 Windows 编译了 1.54。当然,您仍然可以尝试看看它是否有效。
    • 只是提到我在链接致命错误方面遇到了同样的问题,直到我将我的 VS2010 设置为使用那些预编译的库。
    • @JosuéMolina 好的,现在根据聊天讨论更新了答案。我希望你觉得这个有用!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多