34

我喜欢使用(新)Visual Studio 2015(企业版)构建 boost 1.58.0。过去我是按照以下方式进行的:

  1. 从www.boost.org下载 boost 1.58.0
  2. 提取文件(例如C:\thirdparty\vs2013\x64\boost_1_58_0
  3. 启动 Visual Studio 2013 x64 命令提示符 ( VS2013 x64 Native Tools Command Prompt)
  4. 更改为 boost 目录(例如cd C:\thirdparty\vs2013\x64\boost_1_58_0
  5. 执行.\bootstrap.bat
  6. 执行.\b2 -j8 --toolset=msvc-14.0 address-model=64 --build-type=complete stage
  7. b2 -j8 --toolset=msvc-12.0 address-model=64 --build-type=complete stage --with-python

但是在 VS2015 中没有 VS2015 命令提示符。

此外vcvarsall.bat,我有时用来设置 VS2013 命令提示符也丢失了。

如何使用VS2015编译boost的源代码?

4

5 回答 5

19

不幸的是, Boost 文档非常冗长,因为它试图处理所有操作系统和环境。此外,它会跳过一些节省时间的细节。这是专门针对 VS2015 和 Boost 1.61 的快速步骤。

首先,让我们了解 Boost 是一个拥有大量贡献者的庞大库。因此,所有 Boost 代码分为两部分:仅头文件库和头文件+cpp 库。前者不需要编译。您只需将它们包括在内,您就完成了。后来确实需要建设。您通常不需要担心额外的构建步骤,尽管只设置一次是个好主意。

仅使用 Boost Header 库

  1. 下载7z 格式的Boost 存档并使用 7Zip 解压缩。zip 文件比 7z 文件大得多,使用 Windows Explorer 提取可能需要 20 多分钟,而使用 7Zip 则需要 5 分钟。
  2. 创建文件夹 c:\Program Files\boost。将提取的 boost_1_61_0 文件夹复制到此文件夹中。这个确切的路径不是必需的,但我们将在这里使用它。
  3. 在要使用 Boost 的任何 VC++ 项目中,转到该项目的右键单击属性 > C/C++ > 常规 > 附加包含目录并添加不带引号的路径 C:\Program Files\boost\boost_1_61_0。

现在您应该能够通过 using 语句使用大多数 Boost 库,例如#include <boost/thread/mutex.hpp>.

使用 Boost Header+CPP 库

这些示例包括Boost.Chrono、Boost.Filesystem、Boost.GraphParallel、Boost.IOStreams、Boost.Locale、Boost.Regex、Boost.Thread、Boost.System等。除非您使用这些库,否则不需要执行以下步骤。

  1. 首先确保您没有安装 Windows 驱动程序工具包。如果你有,请暂时卸载它,因为它很可能已经弄乱了包含路径,这将导致 Boost 的构建脚本失败。
  2. 以管理员身份调用 VS2015 x64 本机工具命令提示符。
  3. CD 到 C:\Program Files\boost\boost_1_61_0 然后运行 ​​bootstrap.bat。
  4. 运行 .\b2
  5. 运行 .\b2 variant=debug,release link=static runtime-link=static address-model=64
  6. 剪切文件夹 C:\Program Files\boost\boost_1_61_0\stage\lib 并将其复制到 C:\Program Files\boost\boost_1_61_0\lib。
  7. 对于要使用这些库的 VC++ 控制台项目,右键单击属性 > 链接器 > 常规 > 附加库目录并添加路径 C:\Program Files\boost\boost_1_61_0\lib。对于 VC++ 库项目,您会在“属性”>“图书馆员”中找到相同的设置。

现在你们都准备好了!

注意:@Arnaud 的回答解决了关于找不到命令提示符的原始问题。以上是 Boost 安装的更明确步骤,下面的步骤 #5 以获取有关命令提示符的更多详细信息。

于 2016-09-22T00:09:26.947 回答
15

我尝试安装 Qt,但遇到了同样的问题:缺少 vcvarsall.bat。就我而言,问题是我未选中 The Visual C++ Common Tools。

我修改了我的 VS 2015 安装并添加了缺少的功能Common Tools for Visual C++ 2015

在此处输入图像描述

修改后文件在 C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC

于 2015-07-22T21:34:00.953 回答
1

以下是步骤

1) 从本站http://www.boost.org/下载库

2) 解压。[我在“F:\Internet-Downloads\boost_1_65_1”路径解压文件]

解压Boost库-目录

3) 打开“VS2015 的开发人员命令提示符”,如下图所示。

open_Developer_Command_Prompt

4) 转到您提取文件的目录。

5) 运行 bootstrap.bat 文件,如下图所示

运行 Bootstrap.bat

6)您将获得安装信息,如下图所示

bootstrap.bat - 结果

7)启动VS2015,并创建一个测试应用程序,如下图所示

测试申请

8) 在你的项目中包含 boost 目录[Project Propertry->C/C++->General->Additional Include Directories],如下图所示

在 testapp 中包含 Boost 目录

9) 运行应用程序,如果遇到“error C4996: 'std::_Copy_impl': Function call with parameters that may be unsafe ......”错误,在预处理器目录中添加“_SCL_SECURE_NO_WARNINGS”。[Priject Property- >C/C++->预处理器->处理器定义]

在此处输入图像描述

10 输出:

输出

于 2017-10-07T13:49:27.793 回答
0

使用VS 命令提示符中的https://github.com/Microsoft/vcpkg

于 2017-10-27T09:14:55.627 回答
-2

要查找和调用 VS2015 x64 Native Tools 命令提示符,只需在 Windows 开始->搜索程序和文件文本框中输入“native”即可。系统应该找到命令提示符

于 2016-11-16T21:22:56.357 回答