前言:
在JAVA和PHP语言中正则表达式是自带的,不需要额外的工作就能使用到,然而在C语言中,要使用正则表达式则需要花费一番功夫。虽然linux平台下有正则表达式库,从VS2008开始也提供正则表达式库的支持,但是假设一段代码需要在两个平台下编译运行,那么使用本地平台的API则会导致不好移植。
所以,百度了许多资料,终于找到了PCRE这个库。不过,这个库在windows平台下编译则需要多花费点心思,为了避免日后忘记和给同样想要编译尝试使用pcre库的人一个经验,特写下这篇博客作为记录。
一、下载PCRE源代码:
官网地址: www.pcre.org
里面有pcre 和pcre2的源码,我门只需要下载最新版的pcre源码就好。比如:pcre-8.45.tar.bz2。
二、使用cmake创建VS2010工程编译PCRE
1)cmake下载地址:https://cmake.org/download/,装完请确认cmake的bin在电脑环境变量里,没有需要手动添加一下。
2)生成vs2010工程文件,cmd进入pcre-8.45根目录,
如果编译静态链接库lib文件,执行下面的命令生成.vcxproj和.sln文件:
mkdir buildstatic
cd buildstatic
cmake ../ -G "Visual Studio 10 2010"
如果编译动态链接库dll文件,执行:
mkdir buildshared
cd buildshared
cmake ../ -G "Visual Studio 10 2010" -DBUILD_SHARED_LIBS=ON
即可生成解决方案和工程文件