新規構築したサーバでnginxをビルドしようとしたら下記メッセージが。
./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by using --with-pcre=<path> option.
PCREライブラリが無いらしい。
少し前に他サーバでhttpdのビルドをしようとした時にも見た気がする。その時は脳死でyumしたけどPCREってなんだろうって思って調べた。
PCREライブラリとは
PCRE パッケージは Perl 互換正規表現 (Perl Compatible Regular Expression) ライブラリを提供します。 このライブラリを用いれば Perl 5 と同様の文法により、正規表現によるパターンマッチングを実現することができます。 本パッケージは LFS-9.1 において正しくビルドでき動作することが確認されています。
参考: PCRE-8.44
Perl互換の正規表現ライブラリでPerlと同様の正規表現が使えるようになるらしい。(実装自体はC言語)
Nginxやhttpd以外にもPHPやMySQLやPostfixなんかも依存してる正規表現ライブラリ。
ちなみにConfigureする時に以下のオプションを使えば独自に入れたpcreを使ってnginxをビルドすることも可能
–with-pcre PCREライブラリの使用を強制 –with-pcre=PATH PCREライブラリのソースパスを指定 –with-pcre-jit JITコンパイルサポートでPCREをビルド