如何使用 Visual Studio 2015(企业版)构建 boost 版本 1.58.0

How to build boost Version 1.58.0 using Visual Studio 2015 (Enterprise)

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

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

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

我有时用来设置 VS2013 命令提示符的 vcvarsall.bat 也不见了。

如何使用VS2015编译boost源码?

我尝试安装 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

不幸的是,Boost documentation 非常冗长,因为它试图处理所有 OS 和环境。此外,它还跳过了一些节省时间的细节。这是专门针对带有 Boost 1.61 的 VS2015 的快速步骤。

首先,让我们了解 Boost 是一个拥有众多贡献者的庞大库。因此,所有的 Boost 代码都分为两部分:headers only 库和 header+cpp 库。前者不需要编译。您只需包括它们就可以了。后来确实需要建设。您通常不需要担心额外的构建步骤,尽管只设置一次是个好主意。

使用 Boost Header 仅库

  1. 下载 7z 格式的 Boost archive 并使用 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 不带引号。

现在您应该可以使用像 #include <boost/thread/mutex.hpp>.

这样的语句来使用大多数 Boost 库了

使用 Boost Header+CPP 库

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

  1. 首先确保您没有安装 Windows Driver 工具包。如果有,请暂时卸载它,因为它很可能搞砸了导致 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:\ProgramFiles\boost\boost_1_61_0\stage\lib复制到C:\ProgramFiles\boost\boost_1_61_0\lib.
  7. 对于要使用这些库的 VC++ 控制台项目,右键单击“属性”>“链接器”>“常规”>“其他库目录”并添加路径 C:\Program Files\boost\boost_1_61_0\lib.对于 VC++ 库项目,您将在属性 > 图书馆员中找到相同的设置。

现在你已经准备好了!

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

要查找和调用 VS2015 x64 本机工具命令提示符,只需在 Windows 开始-> 搜索程序和文件文本框中开始键入 "native"。系统应该找到命令提示符

以下是步骤

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

2) 解压缩。[我已经在 "F:\Internet-Downloads\boost_1_65_1" 路径提取文件]

3) 打开 "Developer Command Prompt for VS2015",如下图所示。

4) 转到解压文件的目录。

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

6) 您将获得如下快照所示的安装信息

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

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

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

10 输出:

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