前几篇都涉及到了一点boost的东东,可能有些朋友还没有安装boos库,这里转一个在vs2005中安装boost库的贴子。俺就是按照这个贴操作的,没问题。对朋友们或许有点帮助。 

    注:安装过程参考外表优美别致的的主题博客“Happiness of Programing”,url:[url]http://hi.baidu.com/silyt/blog/item/06ba99c8c05e4b127e3e6f2a.html[/url]


    ====安装过程====


  1、在网站下载boost_1_35_0文件包。boost老巢[url]http://www.boost.org/[/url]

    2、由于boost是采用其自己的bjam工具通过命令行进行编译的,所以: 如果在Windows下开启console窗口(单击“开始”按钮,单击“运行”,敲入“cmd”),必须将Visual Studio中C++目录下的环境vcvarsall.bat配置脚本运行一遍,以设置好VC的编译器环境变量。如果从vs2005的工具菜单进入命令提示窗口(单击“开始”按钮,指向“所有程序”,指向“Microsoft Visual Studio 2005”,指向“Visual Studio 工具”,然后单击“Visual Studio 2005 命令提示”),则不需要运行Visual Studio中C++目录下的环境vcvarsall.bat配置脚本。
  
    3、解压缩到d:\boost_1_35_0\目录下。
  
  4、编译bjam。
  从vs2005的工具菜单进入命令提示窗口(单击“开始”按钮,指向“所有程序”,指向“Microsoft Visual Studio 2005”,指向“Visual Studio 工具”,然后单击“Visual Studio 2005 命令提示”),cd到d:\boost_1_35_0\tools\jam\src下执行build.bat,会在d:\boost_1_35_0\tools\jam\src\bin.ntx86\下生成bjam.exe,將bjam.exe复制到d:\boost_1_35_0\下。
  
  5、设定编译环境。  
  修改user-config.jam (d:\boost_1_35_0\tools\build\v2\user-config.jam) 的MSVC configuration
  # MSVC configuration
  
  # Configure msvc (default version, searched in standard location
  # and PATH).
  # using msvc ;
  using msvc : 8.0 : : <compileflags>/wd4819 <compileflags>/D_CRT_SECURE_NO_DEPRECATE <compileflags>/D_SCL_SECURE_NO_DEPRECATE <compileflags>/D_SECURE_SCL=0 ;
  
  6、编译boost
  將目录cd到d:\boost_1_35_0\下执行
    (1) 编译不带ICU支持的boost库
        此种情况下的boost库编译起来比较的简单,在准备好的console窗口中输入:
        bjam --without-python --toolset=msvc-8.0 --build-type=complete --prefix="d:\boost_1_35_0" stage
       就可以了,如果要安装的话则输入:
       bjam --without-python --toolset=msvc-8.0 --build-type=complete --prefix="d:\boost_1_35_0" install

    (2) 编译具有ICU支持的boost库
        首先我们必须编译ICU库才能够编译boost库,在准备好的console窗口中输入:
        bjam -sICU_PATH=d:\ICU --without-python --toolset=msvc-8.0 --build-type=complete --prefix="d:\boost_1_35_0" stage
        就可以了,如果要安装的话则输入:
        bjam -sICU_PATH=d:\ICU --without-python --toolset=msvc-8.0 --build-type=complete --prefix="d:\boost_1_35_0" install
    通过上面的方法可以很正常完成boost各种需要版本的关系。
    参数说明:
    --without-python 表示不使用 python
    --toolset : 所使用compiler,Visual Studio 2005 为 msvc-8.0
      --build-type:编译类型,complete表示生成所有的版本(debug,release等)
    --prefix:指定编译后library的的目录
    这一步要花比较长的时间(大约几十分钟,视机器配置而定)

  7、设定vs2005环境。
  Tools -> Options -> Projects and Solutions -> VC++ Directories
  在Library files加上d:\boost\lib
  在Include files加上d:\boost_1_35_0\include\boost-1_35\
    注:以上的各个目录只是作为例子说明,实际安装过程中可以视自己的喜好进行修改。
    
友情提示:下载下来的文件包很小,但是编译后整个文件包就非常大(超过4G)。本人的笔记本有点老,硬盘空间不是很大,所以在安装时中断过,后来又转移文件,走了不少冤枉路,朋友们在编译时要留足空间啊!

     ====简单测试====

// BoostTest.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <boost/lexical_cast.hpp>
#include <iostream>

using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
using boost::lexical_cast;

int a=lexical_cast<int>("123");
double b=lexical_cast<double>("123.0123456789");
string s0=lexical_cast<string>(a);
string s1=lexical_cast<string>(b);
cout<<"number: "<<a<<"  "<<b<<endl;
cout<<"string: "<<s0<<"  "<<s1<<endl;
int c=0;
try{
  c=lexical_cast<int>("abcd");
}
catch(boost::bad_lexical_cast& e){
  cout<<e.what()<<endl;
  return 1;
}
system("pause");
return 0;
}
  运行正常而且很有意思。以下主要就是了解熟悉各个文件库的功能和使用方法了,在工作中快速合理的加以利用。当然有兴趣的话可以深入了解源代码,可以通过debug模式单步跟宗到源码。