build pcre for current host

step0、参考

step1、安装依赖

所有时Terminal + Shell + GNU CoreUtils
下载时cURL
解压时tar + bzip2
编译时cmakeninjagcc / GCC | Clang / LLVM
运行时glibc ( libc.solibpthread.sold-linux-x86-64.so )

step2、使用curl命令下载pcre源码包 (

curl -LO https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.bz2

step3、使用tar解压pcre源码包

tar vxf pcre-8.44.tar.bz2

step4、进入pcre-8.44目录

cd pcre-8.44

step5、查看pcre-8.44目录中的内容

step6、使用cmake命令配置编译参数

cmake [option]... -D<变量>=<值> -S <sourceDIR> -B <buildDIR>
本软件特有的变量类型默认值说明
PCRE_BUILD_PCRE8BOOLON是否支持8bit字符
PCRE_BUILD_PCRE16BOOLOFF是否支持16bit字符
PCRE_BUILD_PCRE32BOOLOFF是否支持32bit字符
PCRE_BUILD_PCRECPPBOOLON是否编译生成pcre++.{a | so | dylib}
PCRE_BUILD_PCREGREPBOOLON是否编译生成pcregrep可执行文件
PCRE_BUILD_TESTSBOOLON是否编译测试代码
PCRE_SUPPORT_VALGRINDBOOLOFF是否使用Valgrind
PCRE_SUPPORT_LIBZBOOLON是否使用libz.{a | so | dylib}
PCRE_SUPPORT_LIBBZ2BOOLON是否使用libbz2.{a | so | dylib}
PCRE_SUPPORT_LIBREADLINEBOOLON是否使用libreadline.{a | so | dylib}
ZLIB_INCLUDE_DIRPATH指定zlib头文件所在目录
ZLIB_LIBRARYFILEPATH设置libz.{a | so | dylib}的路径
BZIP2_INCLUDE_DIRPATH指定bzip2头文件所在目录
BZIP2_LIBRARYFILEPATH设置libbz2.{a | so | dylib}的路径
READLINE_INCLUDE_DIRPATH指定readline头文件所在目录
READLINE_LIBRARYFILEPATH设置libreadline.{a | so | dylib}的路径
EDITLINE_INCLUDE_DIRPATH指定libedit头文件所在目录
EDITLINE_LIBRARYFILEPATH设置libedit.{a | so | dylib}的路径
PCRE_NEWLINESTRINGLF换行符的标志。CR | LF | CRLF | ANY | ANYCRLF

示例:

cmake \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -G Ninja \
    -Wno-dev \
    -S . \
    -B build.d

step7、使用cmake命令进行编译

cmake --build build.d

step8、使用cmake命令进行安装

cmake --install build.d