5

Bug Genie 3には、PCREライブラリ8.0以降が必要です。バージョン7.82008-09-05があります。システムを通常のソースからの最新リリースに更新します。

問題を確認し、次の手順でPCREライブラリを更新してみた後:

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

私がpcretest-Cをするとき、私はこれを手に入れました

[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

そして私が見つけるとき、たくさんあります

[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

最後に、私は自分のphp情報に喜んで戻ってきました..それでもバージョン7.8がインストールされていることがわかります。

ここに画像の説明を入力してください

オープンソースアプリケーションのバグジニーがこれを必要としている間に、これを解決するために何をすべきかを教えてもらえますか。返信のためのThx。

4

4 に答える 4

5

私はCentos6.3ユーザーです。私の場合、これはうまくいきました。

  1. 既存のPCREを検索します。

    rpm -qa | grep pcre
    
  2. --nodepsを使用して既存のPCREをすべて削除します。

  3. 8.xより高いpcrerpmをダウンロードします。http://rpmfind.net/linux/rpm2html/search.php?query=pcreの1つを使用しました

  4. rpmを使用してインストールします。

  5. Webサービスを再起動し、phpinfoを確認します。インストールしたばかりのPCREライブラリが表示されます。

于 2012-10-06T08:57:38.700 に答える
4

Centos 5.9では、drmanaloの手順の修正バージョンが機能しました。

  1. 既存のpcrerpm
    -q --queryformat "%{name}。%{arch} \n"pcreを検索します

  2. --nodeps rpm -ev --nodeps pcre-devel.x86_64
    rpm -ev --nodeps pcre.x86_64
    rpm -ev --nodeps pcre-devel.i386
    rpm -ev--nodepspcre.i386を使用して既存のすべてのpcreを削除します
  3. リポジトリ
    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. yumyumを使用してインストール
    --disablerepo=* --enablerepo = utter-ramblings install pcre pcre-devel
  5. Webサービスを再起動し、phpinfoを確認します

于 2013-08-01T21:42:42.963 に答える
2

オプションを使用して、最新のPCREライブラリに対して手動でPHPをビルドする必要があると思い--with-pcre-regex=DIRます。そのためには、PHPソースとPCREソース、および必要になる可能性のある他のすべてのライブラリのソースを取得する必要があります。

このページhttp://php.net/manual/en/pcre.installation.phpは、PHPにバンドルされているPCREのバージョンをまとめたものです。

はるかに簡単なオプションは、OSのパッケージマネージャーを使用してPHPを更新することです(おそらく不安定なリポジトリを有効にすることによって)が、これはOSによって異なります。

于 2012-08-31T12:23:11.940 に答える
0

Centos 5.9では、pcreを6.*から8.*にアップグレードできましたが、問題はありませんでしたが、PHPまたはApacheによって「認識」されることはありませんでした。php53をphp54にアップグレードすることで問題は解決しました

于 2015-09-11T10:05:39.233 に答える