c++ - 使用 VS2012 安装 boost 1.52

标签 c++ boost

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

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

Boost Installation The Boost library can be downloaded here. Currently, the latest version available is Boost 1.52.0. You can build boost by following the instruction here.

Alternative you can download a pre-built lib from here. Once downloaded, copy the installer into the Boost 1.52.0 folder and run it. Rename the folder to lib once done.

所以我下载了 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: fatal error LNK1104: cannot open file 'libboost_date_time-iw-mt-gd-1_52.lib'

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

帮忙吗?

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

最佳答案

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中关联,把文件夹路径放在

(YourProject > Right-Click > Preferences >)General > VC++ Directories > Include Directories

然后下载并安装预编译库(解压到一个文件夹),然后将这个文件夹关联到VS,在

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

当然,如前所述,你也可以编译你想要的包,然后用同样的方式关联到Visual Studio。

关于c++ - 使用 VS2012 安装 boost 1.52,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18796503/

相关文章:

c++ - 如果没有显示 QProgressDialog,QtConcurrent::map 会崩溃

c++ - 具有多个值的无序映射

c++ - ALSA 回调(SIGIO 处理程序)有时会在 boost::posix_time::microsec_clock::local_time() 中的某处挂起

c++ - 将 asio read_some 转换为异步版本

c++ - 中断或加入后重用 Boost 线程(来自线程池)

c++ - 找到多边形的质心?

c++ - 当对象没有数据成员时,统一初始化复制失败

c++ - 错误 R6010。为什么叫它?

c++ - Boost 1.59.0 如何清理项目?

c++ - 使用 Xcode 在 Mac 上构建 Boost