[Namazu-users-ja 1185] Re: xlhtml実行時のセグメンテーション違反について

酒井美那 ouji24 @ gmail.com
2009年 10月 6日 (火) 20:50:02 JST


酒井です。

反応が遅く、申し訳ありません。

2009年9月26日19:02 Tadamasa Teranishi <yw3t-trns @ asahi-net.or.jp>:
(略)
> もし、この手順で Text::Kakasi を参照しないのであれば、何らかの
> 問題があったということです。
> config.log に何か記録されているかもしれません。
(略)
> これはこれで正しいです。
> ただ、Text::Kakasi が正しく動作するならばですが...。

KakasiのPerlモジュールを参照させたところ、
NAMAZUの実行ログ、perl -e(略)の双方にてエラーが確認されました。

ライブラリへのパスが通っていなかったようなため、
ld.so.conf関係のファイルへ追記することで、対応致しました。

●mknmz.logを確認
2009年  9月 28日 月曜日 02:39:35 JST
Can't load '/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/Text/Kakasi/Kakasi.so'
for module Text::Kakasi: libkakasi.so.2: 共有オブジェクトファイルを開けません:
そのようなファイルやディレクトリはありません at
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/DynaLoader.pm line
230.
 at /usr/local/bin/mknmz line 956
Compilation failed in require at /usr/local/bin/mknmz line 956.
2009年  9月 28日 月曜日 02:39:36 JST

●「perl -e "use Text::Kakasi;"」を実行
Can't load '/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/Text/Kakasi/Kakasi.so'
for module Text::Kakasi: libkakasi.so.2: cannot open shared object
file: No such file or directory at
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/DynaLoader.pm line
230.
 at -e line 1
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.

●エラー原因となっているライブラリの在り処調査
# find / -name libkakasi.so.2
/usr/local/lib/libkakasi.so.2

●libkakasi.so.2があるライブラリパスを追加
○ld.so.conf.d/add-ld.confへライブラリパスを追加。
ld.so.conf内で「include ld.so.conf.d/*.conf」と記述しており、
追加分は「add-ld.conf」ファイルにて管理。

//-----ここから------
/usr/lib64
/usr/local/lib                  ←追加
-------ここまで-----//

○追加後「ldconfig」コマンドを実行

TextKakasiが初期でPerlモジュール利用になっていなかったのは、
インストール順序が間違っていたからか、
上記のようにライブラリパスが関係していたのかは、わかりません。。。

NAMAZUのconfig.logを確認したところ、
Perl moduleがnot foundという判定になっていたようです…

●namazuのconfig.log一部
configure:13075: result: yes
configure:13090: checking if malloc debugging is wanted
configure:13111: result: no
configure:13157: checking for admin's email address
configure:13159: result: webmaster @ inet-new.mycom.co.jp
configure:13189: checking for perl5
configure:13222: result: no
configure:13189: checking for perl
configure:13207: found /usr/bin/perl
configure:13219: result: /usr/bin/perl
configure:13238: checking for NKF perl module
configure:13242: result: yes
configure:13293: checking for Text::Kakasi perl module
configure:13300: result: no
configure:13304: checking for kakasi
configure:13322: found /usr/local/bin/kakasi
configure:13335: result: /usr/local/bin/kakasi
configure:13344: checking for Text::ChaSen perl module
configure:13351: result: no
configure:13355: checking for chasen
configure:13386: result: no
configure:13395: checking for MeCab perl module
configure:13402: result: no
configure:13406: checking for mecab
configure:13437: result: no
configure:13446: checking for default wakatigaki processor
configure:13459: result: KAKASI
configure:13635: checking for File::MMagic perl module
configure:13639: result: yes
configure:13857: creating ./config.status
(略


> ざっと見た限りは問題ありません。
> # 詳しく確認してませんが。
(略)
> いいえ。mknmz を実行する際の環境変数を使用しますので、スクリプト
> から mknmz を実行しており、そのスクリプトで環境変数を正しく設定して
> いるならば、それは正しいです。

ご確認くださり、ありがとうございます。
xlhtmlに関する検証は進んでいないものの、
それ以外の点でのインデックス生成、ログ等の吐き出しは、
エラーなく行われるようになったようです。


----------------------------------
酒井美那<ouji24 @ gmail.com>


Namazu-users-ja メーリングリストの案内