Boost---在Windows上的入门(1)

欢迎

欢迎来到 Boost 库 !你已经完成了本教程的时候,你会至少有点熟悉的 Boost 发行内容以及如何去使用它。

这里是什么

本文档旨在是极其温柔的介绍,所以我们包括相当数量的可能已经非常熟悉你的材料。为简单起见,我们也留下中级和高级用户可能会想一些的信息。在本文档末尾,我们会请您到可以帮助你追求这些主题进一步的资源。

正文前书页

我们使用一个排版约定可能不会立即明显︰斜体文本示例中的是作为一个描述性的占位符的东西,通常你会提供的信息。例如︰

$ echo "My name is your name"
 echo "My name is your name"

在这里你应该想象"你的名字"文本替换为您的真实姓名。

准备好了吗?

我们走吧!

在 Windows 上入门

Cygwin和MinGW用户注意


如果您计划使用您从 Windows 命令提示符的工具,你在正确的地方。如果你打算建立从Cygwin bash shell,你实际上跑步在 POSIX 的平台上,应该按照入门对 Unix 变体。其他命令外壳, MinGW下面,如不支持 — — 他们可能或可能不工作。

索引

  • 索引


    1 获得提升
    2 Boost 发行
    3 仅有文文件的库
    4 建立一个简单的程序,使用 Boost
    4.1 建立从 Visual Studio IDE
    4.2,或从命令提示符处生成
    4.3 错误和警告
    5 准备使用提升图书馆二进制文件
    5.1 简化生成来源
    5.2 或生成二进制文件来源
    5.2.1 安装 Boost.Build
    5.2.2 确定你的工具集
    5.2.3 选择生成目录
    5.2.4 调用b2
    5.3 预期生成输出
    5.4 在的情况下生成错误
    6 到 Boost 库链接您的程序
    从 Visual Studio IDE 中的 6.1 链接
    6.2 版或从命令提示符下的链接
    6.3 图书馆命名
    6.4 测试程序
    7 结论和进一步的资源
1 获得提升


搞一份刺激的最可靠方法是下载boost_1_63_0.7z或boost_1_63_0.zip并解压它来安装完整的 Boost 发行。一
 

2 Boost 发行

这是最终的目录结构示意图︰

 
 

boost_1_63_0\ .................The “boost root directory” 根目录

index.htm ......... A copy of www.boost.org starts here www.boost.org 的副本从这里开始 boost\ ......................... All Boost Header files 所有头文件目录 lib\ ..................... precompiled library binaries 重新编译的库二进制文件 libs\ ............ Tests, .cpp s , docs, etc., by library 测试、源代码、文档等库的形式 index.html ........ Library documentation starts here 库的文档入门 algorithm\ any\ array\ …more libraries… status\ ......................... Boost-wide test suite 全升压测试套件 tools\ ........... Utilities, e.g. Boost.Build, quickbook, bcp 工具集 more\ .......................... Policy documents, etc. 策略文档 doc\ ............... A subset of all Boost library docs 所有库文档的子系统

它是重要的是要注意以下几点︰

  1. 在文档和邮件列表中,(经常C:\Program Files\boost\boost_1_63_0)根目录的路径有时被称为$BOOST_ROOT。

  2. 若要编译任何刺激方案中,您需要包含在你#include路径提高\子目录的目录。具体步骤为建立在 Microsoft Visual Studio 中的#include路径遵循本文档; 稍后的如果您使用另一个 IDE,有关说明请参阅您的产品文档。

  3. 因为所有刺激的头文件具有.hpp扩展名的文件,和促进根的$BOOST_ROOT\子目录中生活,#include指令将看起来像︰

    #include <boost/whatever.hpp>
    whatever.hpp>
    

    #include "boost/whatever.hpp"
    whatever.hpp"
    

    根据自己的喜好使用尖括号有关包括。甚至 Windows 用户可以的 (和可移植性的原因,大概应该) 使用正斜杠中的#include指令;您的编译器并不关心。

  4. 不要被doc\子目录所困扰;它只包含 Boost 文档的子集。入手libs\index.html ,如果你正在寻找的全貌。

 

标题组织


Boost 库头文件的组织并不完全统一,但大多数库遵循几个模式︰


一些旧的库和大多数很小库置于所有公共头文件直接放入boost\.


大多数库的头文件存在于boost\.子目录中,以库命名的后面。例如,你会发现在 Python 库def.hpp头
boost\python\def.hpp.


在boost中,一些库有在"代理头文件, 包含了其他所有的头文件。例如, Boost.Python的代理头文件
boost\python.hpp.


大多数图库在boost\子目录中放置自己的文件夹,称为detail\ 或者aux_\。不要指望在这些目录中发现任何可以使用。

3 仅有头文件的库

很多人想要知道的第一件事是,"如何编译Boost?",好消息是,通常情况下,没有必要编译。
 

不需要编译是什么意思?

大多数的 Boost 库是仅有头文件︰ 他们包括完全的头文件包含模板和内联函数,并且无需单独编译的库二进制文件或特殊待遇链接时。

那必须单独编译的唯一的 Boost 库是︰
Boost.Chrono
Boost.Context
Boost.Filesystem
Boost.GraphParallel
Boost.IOStreams
Boost.Locale
Boost.Log (见构建文档)
Boost.MPI
Boost.ProgramOptions
Boost.Python (见Boost.Python 构建文档之前构建和安装它)
Boost.Regex
Boost.Serialization
Boost.Signals
Boost.System
Boost.Thread
Boost.Timer
Boost.Wave


几个库有可选单独编译的二进制文件︰
Boost.DateTime具有二进制组件,只需时如果你使用的其to_string/from_string或序列化的功能,或如果你的目标 Visual c + + 6.x 或 Borland。
Boost.Graph也有二进制组件,只需时如果你打算GraphViz 文件解析.
Boost.Math具有二进制组件为 TR1 和 C99 cmath 功能。
Boost.Random有一个二进制的组件,它只需要如果你使用的random_device.
虽然,可以在"仅标题"或"单独编译"模式中,使用Boost.Test 单独的编译推荐用于严重.
Boost.Exception提供了非侵入性执行 32 位 _MSC_VER exception_ptr = = 1310年和 _MSC_VER = = 1400,需要单独编译的二进制文件。这是由 #define BOOST_ENABLE_NON_INTRUSIVE_EXCEPTION_PTR 启用。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

道格拉斯范朋克

播种花生牛奶自留田

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值