一、boost库简介
boost库是一个功能强大,构造精巧,跨平台的免费的C++开源库。它使得C++编程更优雅、更有活力、更高产,C++11的标准有三分之二来自boost库。在boost1.57版本时,就一共包含了129个组件,分为25个大类,涵盖了文本处理,容器,迭代器,算法,图像处理,模板元编程,并发编程等许多领域。
二、boost库的安装
1、boost库的获取方式
可以从boost官网上下载,网址是:http://www.boost.org/。本文使用的boost库是1.57版本,下载下来之后解压到当前目录下。如:下载的包是:boost_1_63_0.tar.gz
tar -zxvf boost_1_63_0.tar.gz
2、boost的目录结构
笔者没有使用tree
这个命令来展示目录,原因是这图片太高不太好。
boost
:这个目录包含了boost库的几乎所有的代码
doc
:html
文档,也以生成pdf的文档
libs
:库作者相关文档
status
:测试boost库的各个组件
tools
:b2
,quickbook
等自带工具
图片展示的是boost
目录下的一些代码库,图片中date_time
是boost中的一个时间处理类,继承自timer
,拥有所有timer
库的属性。
3、boost库的使用方式
boost库的大多数组件不需要编译链接,我们在自己的源码里面直接包含头文件即可,如,如果使用boost::timer,只需要写以下的语句即可
#include <boost/timer.hpp>
using namespace boost
4、boost库开发环境搭建
4.1、快捷安装
这快捷安装boost的一个shell脚本,直接执行这个脚本加./b2 install即可
./bootstrap.sh ./b2 install
4.2、完全安装boost库
执行下面命令即可
./bootstrap --buildtype=complete install
这样可以安装所有的测试版,发行版,静态库和动态库。
4.3、定制安装
用户可以根据自己的选择来编译需要使用的库
下面这条命令是查看所有必须编译才能使用的库
./b2 --show-libraries
在完全编译的基础上,使用–with或者–without选项可打开或者关闭某个库的编译,如
./b2 --with-date_time --buildtype=complete install
将仅仅编译安装date_time
库
4.5、验证开发环境
头文件<boost/version.hpp>
里面有两个宏,定义了当前使用的boost程序的版本号
头文件<boost/config.hpp>
中有三个BOOST_STDLIB
,BOOST_PLATFORM
和BOOST_COMPILER
,分别定义了当前操作系统、编译器和标准库
下面是测试boost是否安装成功的代码
#include <boost/version.hpp>
#include <boost/config.hpp>
int main()
{
cout << BOOST_VERSION <<endl;
cout << BOOST_LIB_VERSION<<endl;
cout << BOOST_STDLIB <<endl;
cout <<BOOST_PLATFORM <<endl;
cout << BOOST_COMPILER<<endl;
}
使用g++编译之后,能输出结果,那么,恭喜您,您的环境已经搭建好了。