プロが教えるわが家の防犯対策術!

sbclでmecab出力を使おうと思っています。
バインディングを見つけて喜んでいたのですが、うまく動いてくれません。
(バインディングURL : http://lispuser.net/commonlisp/japanese.html#sec …

OSはMacOSX 10.5.7 です。

mecab.lisp というファイルをloadするところで、
"libmecab.soが開けない"
という表示がでます。(詳細下記)
mecabの中身を少し調べたところ、libmecab.oはあるのですが、libmecab.soがなかったので、
代わりにlibmecab.oを読み込ませるようにしてみました。
ただ、それでも、結果は同じでした。

ググったりして頑張ってみたのですが、
初心者なもので、結局わかりませんでした。

どなたか解決方法がわかりませんでしょうか。
どうぞ、よろしくお願いします。

debugger invoked on a LOAD-FOREIGN-LIBRARY-ERROR:
Unable to load foreign library (LIBMECAB).
Error opening shared object "libmecab.so":
dlopen(3) failed.

Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
0: [RETRY ] Try loading the foreign library again.
1: [USE-VALUE] Use another library instead.
2: [ABORT ] Exit debugger, returning to top level.

(CFFI::FL-ERROR "Unable to load foreign library (~A).~% ~A")[:EXTERNAL]

A 回答 (2件)

Macは使ったことがないので詳しくは分からないようですが、


動的ライブラリの拡張子が'so'ではなく'dylib'のような気がします。

なので、'libmecab.dylib'のパスを探して、それを読み込ませるように
してあげれば、動くかもしれません。
(確証は全くないですが...)
    • good
    • 0
この回答へのお礼

お礼を申し上げるのが遅くなってしまい、
すみません。

yapsmaさんのご指摘のように、
dynamic library の拡張子 .dylib がありましたので、
ソースのパス指定部分を書き換えてみました。
すると、見事解決致しました。

yapsmaさん、ご指南ありがとうございました。

お礼日時:2009/07/09 04:23

う~~ん、これはちょっと分からないなあ。



僕もGNU/Linux上でmecab入れて試してみたんですが、恐らく依存関係が複雑過ぎるのかな?定義されたasdfファイルを読み込ませても、jpが無い、とか色々言われて……。
readme.txtでもあればもうちょっと明解なんですが、こう言う場合は直接作者に連絡を取って教わった方が良いですよ。

件のページはトップページが

LISPUSER:
http://lispuser.net/

で、最下段に

>御感想,御意見,Lisp 話,Lisp 関連サイトの紹介などは ××× までメールしてください.

とか書いてるんで、メールで教えを乞う層、ってのは歓迎してんじゃないのかな、と思います。
    • good
    • 0
この回答へのお礼

お礼を申し上げるのが遅くなってしまい。
申し訳ありません。

ダメもとで、制作者さんに連絡してみます。
ご提案ありがとうございました。

お礼日時:2009/07/09 04:15

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!