最近在学习nginx,nginx rewrite依赖于PCRE库,所以需要在linux系统中编译安装PCRE库。具体步骤如下:

1.下载PCRE包

首先去官网下载pcre的安装包

如果通过FTP的方式,下载地址为:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/

目前最新的版本为8.32,linux对应的安装包名称为:pcre-8.32.tar.gz。

2.把安装包上传到服务器,然后解压

Shell代码  

[root@localhost local]# tar -zxvf pcre-8.32.tar.gz

解压之后在当前目录下生成了一个文件夹:pcre-8.32

Shell代码  

drwxr-xr-x 7 1169  1169    4096 Nov 30 18:50 pcre-8.32

3.配置

Shell代码  

[root@localhost pcre-8.32]# ./configure

配置完之后控制台会打印出pcre配置的摘要信息

Shell代码  

pcre-8.32 configuration summary:

Install prefix .................. : /usr/local

C preprocessor .................. : gcc -E

C compiler ...................... : gcc

C++ preprocessor ................ : g++ -E

C++ compiler .................... : g++

Linker .......................... : /usr/bin/ld

C preprocessor flags ............ :

C compiler flags ................ : -O2 -fvisibility=hidden

C++ compiler flags .............. : -O2 -fvisibility=hidden -fvisibility-inlines-hidden

Linker flags .................... :

Extra libraries ................. :

Build 8 bit pcre library ........ : yes

Build 16 bit pcre library ....... : no

Build 32 bit pcre library ....... : no

Build C++ library ............... : yes

Enable JIT compiling support .... : no

Enable UTF-8/16/32 support ...... : no

Unicode properties .............. : no

Newline char/sequence ........... : lf

\R matches only ANYCRLF ......... : no

EBCDIC coding ................... : no

EBCDIC code for NL .............. : n/a

Rebuild char tables ............. : no

Use stack recursion ............. : yes

POSIX mem threshold ............. : 10

Internal link size .............. : 2

Match limit ..................... : 10000000

Match limit recursion ........... : MATCH_LIMIT

Build shared libs ............... : yes

Build static libs ............... : yes

Use JIT in pcregrep ............. : no

Buffer size for pcregrep ........ : 20480

Link pcregrep with libz ......... : no

Link pcregrep with libbz2 ....... : no

Link pcretest with libedit ...... : no

Link pcretest with libreadline .. : no

Valgrind support ................ : no

Code coverage ................... : no

4.编译

执行make操作:

Shell代码  

[root@localhost pcre-8.32]# make

编译完后可以执行make check进行测试(这一步非必须)

Shell代码  

Testing pcregrep version 8.32 2012-11-30

Testing pcregrep main features

Skipping pcregrep UTF-8 tests: no UTF-8 support in PCRE library

Testing pcregrep newline settings

PASS: RunGrepTest

==================

All 5 tests passed

==================

make[2]: Leaving directory `/usr/local/pcre-8.32'

make[1]: Leaving directory `/usr/local/pcre-8.32'

[root@localhost pcre-8.32]#

上面的make check结果中有一句:

Shell代码  

Skipping pcregrep UTF-8 tests: no UTF-8 support in PCRE library

这是因为在前面步骤中执行./configuration配置时没有加上对utf-8的支持

如果要加上对utf-8的支持可以在./configuration时加上参数:

Shell代码  

[root@localhost pcre-8.32]# ./configure --enable-utf8

配置完后再重新make

make完后再次执行make check结果如下:

Shell代码  

Testing pcregrep version 8.32 2012-11-30

Testing pcregrep main features

Testing pcregrep UTF-8 features

Testing pcregrep newline settings

PASS: RunGrepTest

==================

All 5 tests passed

==================

make[2]: Leaving directory `/usr/local/pcre-8.32'

make[1]: Leaving directory `/usr/local/pcre-8.32'

[root@localhost pcre-8.32]#

5.安装

执行make install操作:

Shell代码  

[root@localhost pcre-8.32]# make install

make install结束后pcre编译安装流程就结束了。

linux编译pcre生成动态链接库,Linux下编译安装PCRE库相关推荐

  1. centos php yum gd库,Centos7下PHP安装gd库的实例讲解

    Centos7下安装php, 或php的gd库支持,都是很简单的. 一切通过yum搞定. yum install php-gd 以上命令就搞定php-gd的支持,快快看看phpinfo是否支持了? 可 ...

  2. linux mysql 5.6.22_LinuxCentOS6.0下编译安装MySQL5.6.22

    Linux CentOS6.5下编译安装MySQL 5.6.22[给力详细教程] 一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库(安装过程注意有没出错) yum install gcc ...

  3. linux rsa密钥生成工具,linux下生成rsa密钥的方法

    首先生成密钥,用命令ssh-keygen –t rsa 运行后可以一直空格,生成密钥,id_rsa和id_rsa.pub文件 ,默认放在/root/.ssh/下,.ssh文件是隐藏的,要显示隐藏文件才 ...

  4. linux下python安装opencv库_Linux下怎么配置python和opencv

    匿名用户 1级 2017-06-20 回答 以下说明在Linux下Python和OpenCV结合安装的过程,Python要使用OpenCV模块,则必须导入OpenCV提供的包,所以要提供Python支 ...

  5. mysql5.5在windows7下编译的详细步骤_Windows7下编译MySQL5.5的详细步骤

    由于在window7下编译MySQL5.5.19过程中遇到很多问题,所以再次把详细步骤写出来,以供大家参阅,这个是完整通过实验的步骤,网上一堆的东西不是少这个就是少那个,所以整理了下,希望帮助大家更好 ...

  6. linux版vmware卡顿,Manjaro下Vmware安装的MacOS10.15遇到的性能问题导致几乎无法启动问题及解决...

    算是记录一下折腾Manjaro过程中遇到的几乎要放弃Manjaro的这么一件事. 一.题外话/背景 一直以来,就在各版本linux下安装vmware跑MacOS,运行也比较流畅. 本次折腾Manjar ...

  7. 苹果linux桌面文件夹,Ubuntu 10.04下一键安装Mac OS X主题桌面

    不久前的<Ubuntu 10.04下Mac OS X风格桌面美化安装>遭到网友的砖头,认为和Mac OS X风格桌面美化安装根本没有关系.本来是要跟这篇一起发布的,一等就等了这么长,下面我 ...

  8. Centos7下PHP安装gd库

    Centos7下安装php, 或php的gd库支持,都是很简单的. 一切通过yum搞定. yum install php-gd 以上命令就搞定php-gd的支持,快快看看phpinfo是否支持了? 可 ...

  9. Centos7.5下pip安装第三方库时出现提示:You are using pip version 8.1.2, however version 10.0.1 is available.

    今天我在安装第三方库Django框架时出现的完整的提示为: You are using pip version 8.1.2, however version 10.0.1 is available. ...

最新文章

  1. python潜力开源项目_比较了1000多个Python开源项目,精选出这34个
  2. CListCtrl使用技巧汇总
  3. 史上最全 BAT 大厂面试题整理
  4. boost 变量类型转换
  5. python xlrd安装_详解python中xlrd包的安装与处理Excel表格
  6. maxdea如何计算指数_10分钟计算出指数温度,开始基金定投之旅~
  7. Unity3D打包apk的主界面和android组件共同显示
  8. 索尼播放器Android系统,获得最新固件的索尼NW-ZX505,简直脱胎换骨!
  9. 宏碁台式计算机u盘启动,宏基台式机U盘重装怎么设置U盘启动项
  10. mysql 查询重复数据并删除
  11. JSP 页面缓存以及清除缓存
  12. CPU飙高和内存飙高等等的一般处理步骤
  13. fun在c语言中意义与用法,fun的用法
  14. Scrapy框架学习 - 爬取豆瓣电影排行榜TOP250所有电影信息并保存到MongoDB数据库中
  15. 【2021.08】python会员数据化运营task01
  16. 入门的Android架构师需要掌握哪些技能?
  17. 微信公众平台开发——腾讯地图导航
  18. 谷歌卫星影像存储方案
  19. 如何避免「三分钟热度」,找到人生的「热爱」
  20. 电力电子产品结构设计培训

热门文章

  1. 蓝桥杯单片机第十届国赛练习
  2. Ubuntu 16.04下Kinect XBOX 360驱动安装与骨骼跟踪教程
  3. 是时候祭出我的高效办公神器了,小白和大牛的必备工具,文档管理so easy
  4. 国企央企OFFER收割全攻略 | 银行篇之面试
  5. Mysql学习笔记之事务详解(读未提交、读以提交、可重复读、串行化读)
  6. LPC1114 读取74HC165数据(级联)
  7. 基于区块链的农产品溯源系统开发
  8. 大量阅读,并不等同于走马观花
  9. 人到中年再无奈,也要有这3种“毛病”,余生漫长,越超脱越舒服
  10. 浅谈Python两大爬虫库——urllib库和requests库区别