CentOS 6.8にrsyslogをソースインストールする

※注意事項
現在この作業は難航しております。
したがって、以下の内容は必ずしも正しくない可能性があります。


CentOS 6.8にパッケージインストールされているrsyslogはちょっと古いです。

rsyslogの最新バージョン8.21.0をソースインストールしてみました。
No package ‘libestr’ found

$ tar xvzf rsyslog-8.21.0.tar.gz
$ ./configure
〜省略〜
configure: error: Package requirements (libestr >= 0.1.9) were not met:

No package 'libestr' found
〜省略〜

「libestrがない」と怒られましたので、インストールいたします。

$ sudo yum -y install libestr

もう一度、コンフィギュア。

$ ./configure

しかし、同じエラーが出ます。
libestrではなくlibestr-develをインストール。

$ sudo yum -y install libestr-devel

ダメだ。
どうやら、世界中のrsyslogインストーラーがここでつまずいているらしい。

$ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure --prefix=/usr/local
〜省略〜
configure: error: Package requirements (libfastjson) were not met:

No package 'libfastjson' found
〜省略〜

お、エラーメッセージが変わった。
libfastjsonの最新版をダウンロードしてコンパイルする。

libuuidをインストール。
$ yum -y install libgcrypt-devel
libgcryptをインストール。

libgpg-errorをインストール。

libsystemd-journal-1.4.0.tar.gz
liblogging-stdlogが必要らしい。

libsystemd-journalのインストール方法がわからなかったので--disable-journalオプションをつけてコンフィギュアした。

$ ./configure --disable-journal

PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure

libestrをソースインストール

libestrのターボールをダウンロードし、ソースインストールしました。

$ tar xvzf libestr-0.1.10.tar.gz
$ cd libestr-0.1.10
$ ./configure
$ make
$ sudo make install

そして、もう一度rsyslogをコンフィギュア。
しかし同じエラー。

苦悩の作業

rsyslogは、他のライブラリの依存関係が多階層に及んでいるらしく、いくつものソフトウェアをコンパイル&インストールしなければならないようだ。

GMPのインストール。

nettleのインストール。
gnutlsのインストール。→コンパイルできない。

このままでは埒が明かない。
いったん、デフォルトインストールされているrsyslogを使うことにする。

参考サイト

rsyslog実践管理入門サポートページ