知道Boost库但一直没正式使用,今天使用了一下确实非常方便,是c++开发者的利器。要使用boost,先把它编译一下再说(虽然说boost里有很多可以直接使用的hpp文件,不需要编译),下面就boost的编译做个笔记。
Boost版本:boost_1_54_0
开发环境:vs2010
操作系统:windows 7 专业版 32位系统
一、下载:
先到官网下载http://sourceforge.net/projects/boost/files/boost/,响应的boost版本。
二、编译boost 1.54.0
参考boost_1_54_0中的文档(点击index.htm)Getting Started on Windows这一章有详细的介绍,下面编译过程在 5.1 Simplified Build From Source 有具体说明。
打开windows的命令行窗口(cmd打开),进入boost根目录,分别输入以下两个命令:
bootstrap
.\b2
然后可以去做其它的事情了,大于半个小时编译完成。
三、设定vs2010环境
(1) 设置系统环境变量:$(BOOST): C:\boost_1_54_0
(2) vs2010项目中添加boost库:
在你的解决方案属性中添加boost库文件。
包含目录:$(BOOST_ROOT);
库目录:$(BOOST_ROOT)\stage\lib;
需要注意预编译头选项,在配置属性的C/C++中找到预编译头,选择 不使用预编译头.
由于boost中的提供的文件格式为.hpp(头文件与源文件在一起),这些文件都不包含” StdAfx.h”
四、测试程序Viusal Studio 2010里测试开发
VS2010里新建一个控制台程序:
#include <boost/regex.hpp>
#include <iostream>
#include <string>
int main()
{
std::string line;
boost::regex pat( "^Subject: (Re: |Aw: )*(.*)" );
while (std::cin)
{
std::getline(std::cin, line);
boost::smatch matches;
if (boost::regex_match(line, matches, pat))
std::cout << matches[2] << std::endl;
}
}
好了,boost编译到此全部完成,开启漫漫boost之旅吧。