[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: mule2 segmentation fault
>> On 19 Apr 2002 00:59:01 +0900
>> suto@ks-and-ks.ne.jp (Kiyokazu SUTO) said as follows:
>> うーん,backtrace を取ってみて,一番怪しそうな xfns.c:x_window() の実
>> 行部分の変数の値を調べてみたのですが….これで,不審な個所があるでしょ
>> うか?
>static linkなバイナリを作るわけには行きませんか。
原因は全く不明なのですが,末尾に添付したパッチを適用して,libXt と
libXaw を static link すると,segmentation fault せずに正常に起動する
ようになってしまいました.
libXt か libXaw のどちらかだけでも,dynamic link にするとやっぱり segv
します.
libXaw を dynamic link にした場合は,
(gdb) bt
#0 0x402a4781 in kill () from /lib/libc.so.6
#1 0x080a605c in fatal_error_signal (sig=11) at emacs.c:236
#2 0x402a46b8 in sigaction () from /lib/libc.so.6
#3 0x08146e39 in XtInitializeWidgetClass ()
#4 0x08146fc7 in xtWidgetAlloc ()
#5 0x0814714e in xtCreate ()
#6 0x08147a45 in _XtAppCreateShell ()
#7 0x08147ac2 in XtAppCreateShell ()
#8 0x08089534 in x_window (f=0x83bc000, window_prompting=3, minibuffer_only=0) at xfns.c:2632
#9 0x0808ab29 in Fx_create_frame (parms=1479905740) at xfns.c:3318
(gdb) f 8
#8 0x08089534 in x_window (f=0x83bc000, window_prompting=3, minibuffer_only=0) at xfns.c:2632
2632 shell_widget = XtAppCreateShell (f->namebuf, EMACS_CLASS,
と言う感じです.
libXt を dynamic link にした場合は,
(gdb) bt
#0 0x4029c781 in kill () from /lib/libc.so.6
#1 0x080a3cdc in fatal_error_signal (sig=11) at emacs.c:236
#2 0x4029c6b8 in sigaction () from /lib/libc.so.6
#3 0x400c9c95 in _XtCreateWidget () from /usr/X11R6/lib/libXt.so.6
#4 0x400c9e69 in XtCreateWidget () from /usr/X11R6/lib/libXt.so.6
#5 0x081649ef in XawVendorShellInitialize ()
#6 0x400c946b in XtInitializeWidgetClass () from /usr/X11R6/lib/libXt.so.6
#7 0x400c9439 in XtInitializeWidgetClass () from /usr/X11R6/lib/libXt.so.6
#8 0x400c9439 in XtInitializeWidgetClass () from /usr/X11R6/lib/libXt.so.6
#9 0x400c993a in XtInitializeWidgetClass () from /usr/X11R6/lib/libXt.so.6
#10 0x400ca178 in _XtAppCreateShell () from /usr/X11R6/lib/libXt.so.6
#11 0x400ca205 in XtAppCreateShell () from /usr/X11R6/lib/libXt.so.6
#12 0x080871b4 in x_window (f=0x83d3000, window_prompting=3, minibuffer_only=0) at xfns.c:2632
#13 0x080887a9 in Fx_create_frame (parms=1479889356) at xfns.c:3318
(gdb) f 12
#12 0x080871b4 in x_window (f=0x83d3000, window_prompting=3, minibuffer_only=0) at xfns.c:2632
2632 shell_widget = XtAppCreateShell (f->namebuf, EMACS_CLASS,
(gdb) l
2627 ac = 0;
2628 XtSetArg (al[ac], XtNallowShellResize, 1); ac++;
2629 XtSetArg (al[ac], XtNinput, 1); ac++;
2630 XtSetArg (al[ac], XtNmappedWhenManaged, 0); ac++;
2631 XtSetArg (al[ac], XtNborderWidth, f->output_data.x->border_width); ac++;
2632 shell_widget = XtAppCreateShell (f->namebuf, EMACS_CLASS,
2633 applicationShellWidgetClass,
2634 FRAME_X_DISPLAY (f), al, ac);
2635
2636 f->output_data.x->widget = shell_widget;
という感じで,どちらも同じ個所で落ちているようですね.
Emacs20 の xfns.c を引っ張り出してきて差分を調べ,色々試してみたんです
が,どうも該当する変更はなさそうでした.
と言うわけで,一応は動くようになったのですが,どうにも原因が分からない
ままなので,気持が悪いです.以上の情報で原因が分かる方がいらしたら教え
てください.宜しくお願いします.
--
土屋 雅稔 ( TSUCHIYA Masatoshi )
--- mule-2.3-19.34/src/Makefile.in~ Tue Jul 23 01:56:12 2002
+++ mule-2.3-19.34/src/Makefile.in Tue Jul 23 02:21:45 2002
@@ -347,7 +347,7 @@
#ifdef USE_X_TOOLKIT
#define @X_TOOLKIT_TYPE@
#if defined (LUCID) || defined (ATHENA)
-LIBW= -lXaw
+LIBW= /usr/X11R6/lib/libXaw.a
#endif
#ifdef MOTIF
#ifdef LIB_MOTIF
@@ -378,7 +378,7 @@
(Don't forget you need different definitions with and without __GNUC__.) */
LIBXT= STATIC_OPTION $(LIBW) LIBXMU -lXt $(LIBXTR6) -lXext DYNAMIC_OPTION
#else /* not LIBXT_STATIC */
-LIBXT= $(LIBW) LIBXMU -lXt $(LIBXTR6) -lXext
+LIBXT= $(LIBW) LIBXMU /usr/X11R6/lib/libXt.a $(LIBXTR6) -lXext -lXpm
#endif /* not LIBXT_STATIC */
#else /* not USE_X_TOOLKIT */