2008年7月26日

[Namazu-users-ja 1110] Re:mknmz コマンド実行時に以下のエラーがでてしまいます。

寺西です。

ika2006jp@xxxxx wrote:
>
> > > > > ロードしてから、
> > > >
> > > >
> > ロードしてから?って、いったい何をしたのでしょう。

> >
> > ...無視ぜず答えてくださいな。
>
> すみません。
> ldd /usr/local/lib/libkakasi.so
> のようなコマンドを行ったと思います。

それはロードではありませんね。
# man ldd で調べてみてください。

> > kakasi_do が未定義ということは、libkakasi.so
> > が正しく作られていない
> > ということかもしれません。

どうやら、libkakasi.so が正しく作られていないようです。

> もう一回makeしてみましたが、エラーらしいものは、でません
> でした。

make clean して、 configure からやり直してみてください。
その時に何かエラーでませんか?

> > $ objdump -t /usr/local/lib/libkakasi.so | grep
> > kakasi_do
> >
> > と実行するとどうなるでしょう。
> 何もでてきませんでした。

明らかに libkakasi.so がおかしいです。問題の原因は libkakasi.so が
正しく作成されていないということでまず間違いありません。

ただ、何故 libkakasi.so が正しく作られていないかについては少々謎では
あります。

> > $ gcc test.c -I /usr/local/include -L /usr/local/lib
> > -lkakasi
> >
> > でコンパイルした時、エラーが発生しませんか?
>
> エラーでました。
> # gcc test.c -I /usr/local/include -L /usr/local/lib
> /tmp/cc3OuHCo.o: In function `main':
> test.c:(.text+0x19): undefined reference to `kakasi_do'
> collect2: ld はステータス 1 で終了しました

libkakasi.so が正しく作られていないため、リンクに失敗しているよう
です。

同じ理由で Text::Kakasi で libkakasi.so がリンクできていないという
ことになります。

libkakasi.so が正しく作られればコンパイルでエラーはでませんし、
Text::Kakasi もロードできるようになります。

> エラーができれば、できるのでしょうか?↓
>
> > できたバイナリ a.out を実行して

はい。libkakasi.so が正しく作られていれば、a.out が作られて実行でき
ます。
ただ、これは問題を切り分けるために libkakasi.so が正しく作られてい
るか否かを調べるための作業でした。
ここまでで libkakasi.so が正しく作られていないことがわかりましたので、
次は libkakasi.so を正しく作るための作業に移りましょう。
--
=====================================================================
寺西 忠勝(TADAMASA TERANISHI) yw3t-trns@xxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint = 474E 4D93 8E97 11F6 662D 8A42 17F5 52F4 10E7 D14E

_______________________________________________
Namazu-users-ja mailing list
Namazu-users-ja@xxxxx
http://www.namazu.org/cgi-bin/mailman/listinfo/namazu-users-ja


投稿者 xml-rpc : 2008年7月26日 15:13
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/75690
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。