vs 2005 使用 boost regex

时间:2024-12-25 20:36:44

第一步:

Boost 入门及其VS2005下编译boost库  boost.regex库安装指南  深入浅出之正则表达式(一)  C++中三种正则表达式比较(C regex,C ++regex,boost regex)

Boost下载和Boost安装
去哪下载Boost呢?英文http://www.boost.org ,中文http://boost.c-view.org,可以找到一个.zip或.tar.gz格式的压缩包。下载完毕后,解压到某个目录,比如boost_1_26_0,里面一般有这么几个子目录:boost、libs、more、people、status、tools,看看没问题就行了。
如果Boost更新时您懒得去下载整个压缩包,只希望更新发生变动的文件;或者您是一位跟我一样的Boost Fans,希望跟踪Boost的最新变化,不妨使用CVS方式。首先得有一个CVS客户端软件,比如CvsGui或http://sourceforge.net/projects/cvsgui/提供的WinCVS、gCVS和MacCVS,分别适用于Windows、Linux和MacOS平台。下载、安装、启动三步曲。
VS2005下编译boost库
1. 启动VS2005,在Tool菜单中选择“Visual Studio 2005 Command Prompt“。VS会启动命令提示符窗口,并自动设置好相应的环境变量。
2. 转到<boost>/libs/regex/build目录下(<boost>是你存放boost代码的路径),运行以下命令即可进行编译,这个过程可能会比较久:
nmake -f vc8.mak

3. 运行以下命令进行安装,boost会把上一步产生的lib文件等拷贝到你的VC目录下。
nmake -f vc8.mak install

4. 最后清除安装时产生的临时文件:
nmake -f vc8.mak clean

3. 和 4.没有成功,手动复制到C:\Program Files (x86)\Microsoft Visual Studio 8\VC\include目录下

第二步:

链接遇到问题:fatal error LNK1104: 无法打开文件“libboost_regex-vc80-mt-1_57.lib”

编译出来的lib如图

vs 2005 使用 boost regex

起初我下载的是57版本的。于是我又下载了53版本的zip文件,解压以后将其中的头文件放入C:\Program Files (x86)\Microsoft Visual Studio 8\VC\include目录下。

fatal error LNK1104: 无法打开文件“libboost_regex-vc80-mt-gd-1_46_1.lib”

带有lib前缀表示的是使用静态链接。

为了使你的程序动态链接到boost,需要在:

#include <boost/regex.hpp>

之前定义宏:

#define BOOST_REGEX_DYN_LINK 1

#define BOOST_REGEX_DYN_LINK 1
#include <boost/regex.h>