PCRE libraries version is too old

18,105

Solution 1

I think you have to manually build PHP against newest PCRE library using --with-pcre-regex=DIR option. To do so, you need to obtain the PHP sources and PCRE sources, as well as sources of all other libraries you might need.

This page http://php.net/manual/en/pcre.installation.php summarizes versions of PCRE bundled with PHP.

The much easier option would be updating PHP using package manager of your OS (perhaps by enabling unstable repositories), but this depends on your OS.

Solution 2

I'm Centos 6.3 user. This worked in my case.

  1. Search for existing pcre.

    rpm -qa | grep pcre
    
  2. Remove all existing pcre using --nodeps.

  3. Download pcre rpm higher than 8.x. I used one from http://rpmfind.net/linux/rpm2html/search.php?query=pcre

  4. Install it using rpm.

  5. Restart your web service and check phpinfo. It should reveal the pcre libraries you just installed.

Solution 3

On Centos 5.9 a modified version of drmanalo's steps worked for us:

  1. Search for existing pcre
    rpm -q --queryformat "%{name}.%{arch}\n" pcre
  2. Remove all existing pcre using --nodeps
    rpm -ev --nodeps pcre-devel.x86_64
    rpm -ev --nodeps pcre.x86_64
    rpm -ev --nodeps pcre-devel.i386
    rpm -ev --nodeps pcre.i386
  3. Added repository
    nano /etc/yum.repos.d/utter-ramblings.repo

    [utter-ramblings]
    name=Utter Ramblings
    baseurl=http://www.jasonlitka.com/media/EL5/x86_64/
    gpgkey=#same.url.as.above#/media/RPM-GPG-KEY-jlitka
    enabled=1
    gpgcheck=1

  4. Installed using yum
    yum --disablerepo=* --enablerepo=utter-ramblings install pcre pcre-devel
  5. Restart your web service and check phpinfo
Share:
18,105
1myb
Author by

1myb

Updated on June 13, 2022

Comments

  • 1myb
    1myb almost 2 years

    The Bug Genie 3 requires PCRE librairies 8.0 or later. You have version 7.8 2008-09-05. Update your system to the latest release from your usual sources.

    after i look at the problem and try to update my pcre libraries with the following step:

    wget the latest source of pcre from sourceforge 8.31
    
    # tar -xzf pcre-8.31.tar.gz
    # cd pcre-8.31
    # ./configure --enable-utf8  --enable-unicode-properties
    # make && make install
    

    when i do pcretest -C i got this

    [root@server1 /]# pcretest -C
    PCRE version 8.31 2012-07-06
    Compiled with
      8-bit support only
      UTF-8 support
      Unicode properties support
      No just-in-time compiler support
      Newline sequence is LF
      \R matches all Unicode newlines
      Internal link size = 2
      POSIX malloc threshold = 10
      Default match limit = 10000000
      Default recursion depth limit = 10000000
      Match recursion uses stack
    

    and when i do locate, there are a lot

    [root@server1 /]# locate libpcre
    /lib64/libpcre.so.0
    /lib64/libpcre.so.0.0.1
    /usr/lib64/libpcrecpp.so.0
    /usr/lib64/libpcrecpp.so.0.0.0
    /usr/lib64/libpcreposix.so.0
    /usr/lib64/libpcreposix.so.0.0.0
    /usr/local/lib/libpcre.a
    /usr/local/lib/libpcre.la
    /usr/local/lib/libpcre.so
    /usr/local/lib/libpcre.so.1
    /usr/local/lib/libpcre.so.1.0.1
    /usr/local/lib/libpcrecpp.a
    /usr/local/lib/libpcrecpp.la
    /usr/local/lib/libpcrecpp.so
    /usr/local/lib/libpcrecpp.so.0
    /usr/local/lib/libpcrecpp.so.0.0.0
    /usr/local/lib/libpcreposix.a
    /usr/local/lib/libpcreposix.la
    /usr/local/lib/libpcreposix.so
    /usr/local/lib/libpcreposix.so.0
    /usr/local/lib/libpcreposix.so.0.0.1
    /usr/local/lib/pkgconfig/libpcre.pc
    /usr/local/lib/pkgconfig/libpcrecpp.pc
    /usr/local/lib/pkgconfig/libpcreposix.pc
    

    finally, i backed to my php info happily.. it still show me version 7.8 installed.

    enter image description here

    May i know what should i do to solve this while the open source application buggenie need this . Thx for reply.

  • 1myb
    1myb over 11 years
    may i know what is the location of PCRE ? while there're a lot =(
  • galymzhan
    galymzhan over 11 years
    @SLim It is the location to the directory with PCRE sources (where you have unpacked the pcre-8.31.tar.gz archive)
  • a1337q
    a1337q over 11 years
    can you specify exactly which version you installed from rpmfind.net/linux/rpm2html/search.php?query=pcre? I ran into the same problem using CentOS 6.3
  • a1337q
    a1337q over 11 years
    for all others out there running into the same issue: It worked well with rpmfind.net/linux/sourceforge/f/fu/fuduntu/yum/2012/STABLE/R‌​PMS/… for me.
  • Kim Tranjan
    Kim Tranjan over 10 years
    Man, you're a lifesaver. Thank you!