久闻boost的大名了,今天终于决定也来体验一把。
对boost了解实在不多,所以先上boost的官方主页(http://www.boost.org/)看一下。在主页右边可以看到"Download"字眼,但是先不要急,"Download"下方有个"Getting Started",这对新手来说非常重要,必看(http://www.boost.org/more/getting_started.html)!里面对boost的安装作了详细的介绍。
从上面的文章了解到,SouceForge为boost提供了http下载,另外,也可以通过CVS下载或更新到最新版本的boost。我选择的是http下载,boost_1_33_1.tar.gz,共13.6M,下载地址:http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=8041
下载期间我们继续看"Getting Started"。boost使用一个名为Boost.Jam的软件来帮助编译,下载地址:http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=72941,我下载的是已编译好的二进制包,boost-jam-3.1.12-1-linuxx86.tgz ,很小,才64K。
这时boost源码包应该也下好了,用tar把boost_1_33_1.tar.gz解压到boost-1.33.1目录,同时把boost-jam-3.1.12-1-linuxx86.tgz包内的bjam文件拷贝到这个目录下(因为要bjam需要boost目录下的boost-build.jam文件)。现在准备工作已经结束了,开始编译吧!
./bjam "-sTOOLS=gcc" install
接下来就是漫长的等待过程了,完整编译大概需要一个多小时,这时可以起来活动活动。编译完成后可以看到/usr/local下的include和lib目录中多出了很多boost的文件。
现在来写一个最简单的c++程序测试boost吧(程序摘自http://www.stlchina.org/twiki/bin/view.pl/Main/BoostEnterBoost):
#include < boost / lexical_cast.hpp >
#include < iostream >
int main()
{
using boost::lexical_cast;
int a = lexical_cast < int > ( " 123 " );
double b = lexical_cast < double > ( " 123.12 " );
std::cout << a << std::endl
std::cout << b << std::endl;
return 0 ;
}
数据类型转换,方便吧?