[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:03899] Re: [Q] lpr from Netscape



みやけ@富山大学です。

色々試行錯誤した結果、うまく行ったようなので、後の方で御報告します。

<199801201440.XAA29937@xxxxxxxxxxx>の記事において
kazuho@xxxxxxxxxxxさんは書きました。

+>// "[debian-users:03842] Re: [Q] lpr from Netscape" において、
+>// Atsuhito Kohda <kohda@xxxxxxxxxxxxxxxxxxxx> さんは書きました。
+>
+>> hamm で同じようになりました。~/.xsession-errors に
+>> 
+>> sh: error in loading shared libraries
+>> /usr/lib/netscape/INSTALL/liblocale.so: undefined symbol: _Xsetlocale
+>> 
+>> とか書かれていませんか。これだったら
+>
+>確にプリントの時にもエラーメッセージが残っていました.これも 
+>libc の locale の実装がらみですかねぇ.残念.

この場合は、netscape-jaの v404-1.1の liblocale.soを使用した場合で、
       /usr/lib/netscape/libc.so.5.2.18が存在しなかった場合こうなりました。
これは、liblocaleのXsetlocaleという関数が、Xlibにはないせいで、
localeの処理はglibc6にまかせて、Xの方では、感知しないというポリシーに
則って、削られたのが原因だと聞きました。

+>でもうちのマシンのはエラーメッセージがちょっと違って以下のよう
+>なものです.
+>
+>[~]$ sh: error in loading shared libraries
+>/usr/lib/netscape/INSTALL/liblocale.so:/usr/lib/netscape/libc.so.5.2.18:
+>cannot open shared object file: No such file or directory
+>
+>ファイルがないと言われているんですけど,実際にはちゃんとありま
+>す.これもまた不可解と言えば不可解…

これは、/usr/lib/netscape/libc.so.5.2.18を参照しないようにしたら、
出なくなりました。
#どうやら、libc.so.5.2.18を探そうとして、失敗している???



そこで、Debian GNU/Linux に関する Q & Aの 22.3章より、
netscape-ja_v404-1.1 の ソースを展開して、

liblocale.cを
char *setlocale (int c, const char *l){
  char *dummy;                          /* <<<<   add*/
  if ((c == LC_ALL || c == LC_CTYPE) && l != NULL
      && !(*l == 'C' && l[1] == '\0')) {
   XtSetLanguageProc(NULL, NULL, NULL);
   l = NULL;
   }
  /* return _Xsetlocale(((c == LC_ALL || c == LC_CTYPE) ? 2 : 3), l); */
  return dummy;                        /* <<<<   add*/
}
として、コンパイルして得られたliblocale.soを、古いliblocale.soと
入れ換えたところ、/usr/doc/netscape-ja/XLC_LOCALE.patch
をあてた環境で、libc.so.5.2.18を使わなければ、動きました。

## bug fixし忘れているのか、(当方の勘違い??)
##  それとも、偶然当方で動いただけなのか??
##  return dummyでなくとも、return 0でも良いじゃないかという話も
##  聞いたような気が…  (Bus errorの元を作っているかも)

以上、散文ですみませんが、何かのお役にたてれたら幸いです。


 富山大学大学院博士課程後期 システム生産工学専攻 1年  
||              パターン情報処理講座                ||
||    三宅   一永  miyake@xxxxxxxxxxxxxxxxxxx       ||
  理論は単純を、構造は複雑を極め 人は最も人らしく