摘要:为了不浪费我的心情,我决定完全编译Boost库。选择目录以提取Boost库4。输入Boost目录,例如D:/Boost_1_33_1/tools/build/jam_Src5。修改build.bat脚本的参数,将原始参数ifEXIST“C:\ProgramFiles/MicrosoftVisualStudio/VC98/bin/VCVARS32.bat”更改为ifEXIST”D:/ProgramFiles/MicrosoftStudio./VC98/bin/VCVARS33.bat“6。在刚刚打开的控制台中运行D:/boost 1_ 33_1/tools/build/jam_ Src/build.bat,最终将在包含bjam.exe可执行文件的目录中生成一个名为bin.ntx86的文件夹,并将其复制到D:/boost_ 1_ 33_1.目录7。可以在www.python.org 8上获得安装python。设置环境变量SETMSVC_ ROOT=“D:/ProgramFiles/MicrosoftVisualStudio/VC98”SETVISUALC=“D:\ProgramFiles/MicrosoftVisualStudio/VC88”SETJAM_TOOLSET=VISUALCSETPHOTHON_ROOT=D:/Program Files/Python23SETPYTHON_VERSION=2.39开始编译bjamsTOOLS=msvcinstall。这完成了VC6.0 IDE环境中10.boost类库的配置。从工具-˃选项-˃目录-˃显示目录中的下拉框中选择:1)将C:\boost/INCLUDE/boost-1添加到Includefiles_33_1/boost目录。
要使用例如正则表达式类的话就需要编译了。为了不浪费自己High的心情,我还是决定完全编译一下Boost库。首先从Boost的老巢http://www.boost.org/下载。下载完成以后是一个安装文件(其实就是进行自动解压缩的)。选择你的目录解压缩Boost库。然后我们开始对其进行编译我所下载的版本是1.33.1。
1.cmd
2.进入安装VC的目录例如D:/Program Files/Microsoft Visual Studio/VC98/Bin目录
3.运行VCVARS32.BAT(这个操作的作用是对此控制台注册VC的环境变量,这样我们就可以在任意目录使用cl进行编译程序)。、
4.进入Boost的目录例如D:/boost_1_33_1/tools/build/jam_src
5.修改build.bat脚本的参数
将原参数
if EXIST "C:/Program Files/Microsoft Visual Studio/VC98/bin/VCVARS32.BAT" (
set BOOST_JAM_TOOLSET=msvc
set BOOST_JAM_TOOLSET_ROOT=C:/Program Files/Microsoft Visual Studio/VC98/
goto :eof)
修改为(就是你的VC6.0安装的目录,我这里举个例子)
if EXIST "D:/Program Files/Microsoft Visual Studio/VC98/bin/VCVARS32.BAT" (
set BOOST_JAM_TOOLSET=msvc
set BOOST_JAM_TOOLSET_ROOT=D:/Program Files/Microsoft Visual Studio/VC98/
goto :eof)
6.在刚才打开的控制台下运行
D:/boost_1_33_1/tools/build/jam_src/build.bat
最终会在目录下生成一个名为bin.ntx86的文件夹里面包含一个bjam.exe可执行文件,将其拷贝到D:/boost_1_33_1目录下
8.设置环境变量
SET MSVC_ROOT="D:/Program Files/Microsoft Visual Studio/VC98"
SET VISUALC="D:/Program Files/Microsoft Visual Studio/VC98"
SET JAM_TOOLSET=VISUALC
SET PYTHON_ROOT=D:/Program Files/Python23
SET PYTHON_VERSION=2.3
9开始编译
bjam -sTOOLS=msvc install(将会安装在默认目录C:/Boost)
这样编译就完成了
10.boost类库在VC6.0的IDE环境中的配置
Tools” -> “Options” -> “Diretories” -> “Show Diretories for”中的下拉框选择:
1) 在Include files 中添加C:/BOOST/INCLUDE/BOOST-1_33_1/BOOST目录。
2) 在Library files 中添加C:/BOOST/LIB目录。
11.测试
如果你不能确定,你的编译是否成功。就需要进行一下测试,拿正则表达式类为例。
测试如下程序
#include "stdafx.h"
#include <cstdlib>
#include <stdlib.h>
#include <boost/regex.hpp>
#include <string>
#include <iostream>
using namespace std;
using namespace boost;
regex expression("^select ([a-zA-Z]*) from ([a-zA-Z]*)");
int main(int argc, char* argv[])
{
std::string in;
cmatch what;
cout << "enter test string" << endl;
getline(cin,in);
if(regex_match(in.c_str(), what, expression))
{
for(int i=0;i<what.size();i++)
cout<<"str :"<<what[i].str()<<endl;
}
else
{
cout<<"Error Input"<<endl;
}
return 0;
}
输入:select name from database;
输出:str:select name from table
str:name
str:table
这样就完成了