UTUMI Hirosi
utuhi****@yahoo*****
2006年 9月 12日 (火) 18:17:24 JST
内海です。 今年の初めにこのような状態になって以来 すっかりギブアップしていたのですが、 http://lists.sourceforge.jp/mailman/archives/kazehakase-devel/2006-January/002477.html > 試しましたが同じところで止まります。 > --- > kz-mozlauncher.cpp:71: error: prototype for ‘nsresult KzContentHandler::Show(nsIHelperAppLauncher*, > nsISupports*, PRBool) > ’ does not match any in class ‘KzContentHandler’ > kz-mozlauncher.h:57: error: candidate is: virtual nsresult > KzContentHandler::Show(nsIHelperAppLauncher*, nsISupports*, PRUint32) > make[4]: *** [kz-mozlauncher.lo] エラー 1 > --- Mandriva の bugzilla に 風博士を必要としているかたがいらっしゃるようなので http://qa.mandriva.com/show_bug.cgi?id=24336 改めてチャレンジしてみました。 kazehakase-0.4.0 でも同じようなビルドエラーが出ます。 エラーの内容と周辺のコードを対照すると kz-mozlauncher.cpp:66-72 > NS_IMETHODIMP KzContentHandler::Show(nsIHelperAppLauncher *aLauncher, > nsISupports *aContext, > #ifdef HAVE_GECKO_1_8 > PRUint32 aForced) > #else > PRBool aForced) > #endif > > kz-mozlauncher.cpp:71: error: prototype for > >‘nsresult KzContentHandler::Show(nsIHelperAppLauncher*, > > nsISupports*, PRBool) PRUint32 がスルーされていることに気づきました。 そこで kz-mozlauncher.cpp:66-72 を次のように改変すると > NS_IMETHODIMP KzContentHandler::Show(nsIHelperAppLauncher *aLauncher, > nsISupports *aContext, > PRUint32 aForced) 別の箇所でエラーが出るものの ひとまずこの箇所は通過することができます。 "GECKO_1_8 を有しているのに、false だと判定されているのでは" と思い configure.in を確認しました。 > gecko_version=`cat $MOZILLA_INCLUDE_ROOT/mozilla-config.h | grep MOZILLA_VERSION_U | awk '{ print $[3]; }' | tr ".ab+" " "` > if test -z "$gecko_version"; then > gecko_version="1 7" > fi Mandriva の mozilla-config.h は $ leafpad /usr/include/mozilla-firefox-1.5.0.6/mozilla-config.h > #define _MULTIARCH_HEADER mozilla-firefox-1.5.0.6/mozilla-config.h > #include <multiarch-dispatch.h> となっており、 MOZILLA_VERSION_U の要素がありません。 そこで gecko_version を強制指定したところ 問題なくビルドできるようになりました。 -gecko_version=`cat $MOZILLA_INCLUDE_ROOT/mozilla-config.h | grep MOZILLA_VERSION_U | awk '{ print $[3]; }' | tr ".ab+" " "` -if test -z "$gecko_version"; then - gecko_version="1 7" -fi +gecko_version="1 8" 短時間動かした限りでは動作も問題なさそうです。 可能でしたら、gecko_version を firefox のバージョンから推測するように 変更していただけましたら幸いです。 Mandriva 用の SRPM を作りました。 http://sourceforge.net/project/showfiles.php?group_id=109779&package_id=119961 風博士の改善を続けてくださってありがとうございます。 // http://lists.sourceforge.jp/mailman/archives/kazehakase-devel/2006-January/002479.html > Debian sid ではうまくいっているので,もしかしたら > SUSE 固有の問題があるのかもしれません. Mandriva です... (8ヶ月あとのツッコミ :-)) -------------------------------------- [10th Anniversary] special auction campaign now! http://pr.mail.yahoo.co.jp/auction/