0

最近、Octave 3.6.4 にアップグレードしたところ、突然、メッセージが表示される問題が発生しました(octave:23508): GLib-CRITICAL **: PCRE library is compiled without UTF8 support pcretest -C簡単なテストで

PCRE version 8.21 2011-12-12
Compiled with
No UTF-8 support
No 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

調査の後、ソースをダウンロードして再コンパイルしました (これらの指示に従って: )ここにリンクの説明を入力してください. 現在、私のシステムには 2 つのバージョンの libpcre があります。の以前の 8.21/usr/local/bin/pcretestと の新しい 8.33 です/usr/bin/pcretest。この後者は、私が欲しいものです。

ahowe42@Neuromancer:~/Downloads$ /usr/bin/pcretest -C
PCRE version 8.33 2013-05-28
Compiled with
8-bit support
UTF-8 support
16-bit support
UTF-16 support
32-bit support
UTF-32 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

ただし、パスなしで pcretest を実行すると、Octave と同様に古いパスが引き続き使用されます。バージョン 8.21 を削除したり、システムに 8.33 を強制的に使用させたりするにはどうすればよいですか?

4

2 に答える 2

0

Mac OS X で古い XAMPP バージョンから最新バージョンに移行するときに、同じ問題が発生しました。Mysql DB の代わりに MariaDB が使用されているようです。

取得した端末で pcretest -C を入力したとき

PCRE バージョン 8.37 2015-04-28 8 ビット サポートでコンパイル UTF-8 サポート 16 ビット サポート UTF-16 サポート 32 ビット サポート UTF-32 サポート ...

そのため、このメッセージの理由がわかりませんでした。しかし、XAMPP/xamppfiles/bin ディレクトリを調べると、ここにも pcre で始まるバイナリが存在することがわかりました。また、XAMM/xamppfiles/lib ディレクトリには、pcre で始まるファイルがありました。

したがって、私の(汚いことは認めますが)解決策は、すべての pcre* ファイルを /opt/local/bin/ および /opt/local/lib/ から /Applications/XAMPP/xamppfiles/bin および lib にコピーすることでした。

mysql の再起動後、エラーは表示されなくなりました。

于 2015-11-17T20:51:26.520 に答える