C++ Boost库

1、简介

        boost库是一个开源的可移植的第三方库。

        boost库下载: Boost C++ Libraries

        boost库的大多数组件不需要编译链接,我们在自己的源码里直接包含头文件即可。(注意:包含头文件的时候需要有boost目录,即#include "boost/logic/tribool.hpp",而不能是#include "logic/tribool.hpp")剩下的少量库(如chrono、date_time、program_options、test、thread等)必须编译成静态库或动态库,并在构建时指定链接选项才能使用。

        下载解压后:

--boost:最重要的目录 , 90 % 以上的 Boost 程序库源码都在这里

--doc:HTMI 格式的文档 , 也可以生成 PDF 格式的文档

--libs:所有组件的示例、测试、编译代码和说明文档

--more:库作者的相关文档

--status:可用于测试 Boost 库的各个组件

--tools:用于编译boost的工具的源代码等

运行bootstrap.bat文件,会生成b2.exe及project-config.jam文件。执行b2.exe(我是Windows操作系统),会在boost_1_74_0\stage\lib下生成x64、x86平台的release及debug版本的静态库。(编译动态库需要添加参数:b2.exe link=shared)

2、构建工具b2
         b2使用文本格式的构建脚本来管理代码,其名称通常是“jamfile”或“Jamfile”(类似make构建工具的makefile脚本一样)。此外b2还有一个特殊的“jamroot”文件,它需要放在整个项目的根目录下,用于管理项目树,定义整个项目的构建设置。

        jamroot文件一般用于定义整个项目里通用的编译参数、包含路径等设置,避免每个子目录里的jamfile重复定义。

        b2使用的构建语言称为bjam,它是一种解释型语言,拥有完整的语法定义,包括变量、分支、循环语句、函数,甚至还包括类。bjam是基于token的语言,它使用空格、tab等空白字符来区分语法元素,不仅是单词,即使是“:”“;”这样的标点符号前后也必须要有空格,否则bjam将无法识别标点,导致语法错误。

        实际上b2是bjam语言的解释器,它查找当前目录下的jamfile,并向上查找jamroot,解释执行其中的bjam语句,最终完成软件的构建。

3、 省略

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值