地方エンジニアの学習日記

興味ある技術の雑なメモだったりを書いてくブログ。たまに日記とガジェット紹介。

./configure: error: the HTTP rewrite module requires the PCRE library.

新規構築したサーバで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以外にもPHPMySQLPostfixなんかも依存してる正規表現ライブラリ。

ちなみにConfigureする時に以下のオプションを使えば独自に入れたpcreを使ってnginxをビルドすることも可能

–with-pcre PCREライブラリの使用を強制
–with-pcre=PATH   PCREライブラリのソースパスを指定
–with-pcre-jit    JITコンパイルサポートでPCREをビルド