2010年1月13日水曜日

ulogd「IPTables log analyzer」のインストール

CentOSで自宅サーバー構築を参考にサイトを構築しているが、

40.2.iptablesログ解析(IPTables log analyzer)

■ulogdインストール
 ここで問題発生

[root@centos /] # ./configure --prefix=/usr --sysconfdir=/etc --libdir=/usr/local/lib --with-mysql
[root@centos /] # make
ulogd_MYSQL.c:174: 警告: format '%lld' expects type 'long long int', but argument 3 has type 'int64_t' ulogd_MYSQL.c:206: 警告: format '%llu' expects type 'long long unsigned int', but argument 3 has type 'u_int64_t'
ld -shared -rdynamic -L/usr/lib64/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lssl -lcrypto -o ulogd_MYSQL.so ulogd_MYSQL_sh.o -lc
ld: bad -rpath option
make[1]: *** [ulogd_MYSQL.so] エラー 1
make[1]: ディレクトリ `/root/work/ulogd/ulogd-1.24/mysql' から出ます
make: *** [recurse] エラー 1

Makeがうまくいかないみたい!いろいろなサイトを見てみると、どうも -rdynamic がいけないみたい。 で
Rules.make を編集(-rdynamic オプションを削除)
# mysql output support
#ULOGD_SL+=MYSQL
MYSQL_CFLAGS=-I-I/usr/include/mysql -DOLD_MYSQL=1
#MYSQL_LDFLAGS= -rdynamic -L/usr/lib64/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lssl -lcrypto
MYSQL_LDFLAGS= -L/usr/lib64/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lssl -lcrypto
再度
[root@centos /] # make
[root@centos /] # make install

今度は成功!良し良し