From amoroso at mclink.it Sun Jul 10 13:20:24 2005
From: amoroso at mclink.it (Paolo Amoroso)
Date: Sun, 10 Jul 2005 15:20:24 +0200
Subject: [cells-gtk-devel] CMUCL sigsegv when starting saved cells-gtk image
Message-ID: <87k6jy6bmv.fsf@plato.moon.paoloamoroso.it>
I am trying to run a dumped image containing a cells-gtk application,
more specifically gtk-demo. When I start the dumped image, I get an
error just after the splash screen.
I include a transcript below. I am trying to understand whether the
problem is related to CMUCL or cells-gtk. I have posted this same
query also to the cmucl-help list, but I haven't received any feedback
yet.
Since cells-gtk provides GTK bindings, before saving the Lisp image I
load the reload-global-table function by Eric Marsden:
http://www.mail-archive.com/cmucl-help at cons.org/msg01289.html
I am using cells-gtk 2005-05-29 and CMUCL 19b under Slackware Linux
10.0.
Paolo
--------------------------------------------------------------------
paolo at plato:~/src/cells-gtk-2005-05-29$ cmucl
; Loading #P"/home/paolo/.cmucl-init.lisp".
CMU Common Lisp 19b (19B), running on plato
With core: /usr/local/cmucl-19b/lib/cmucl/lib/lisp.core
Dumped on: Tue, 2005-06-28 02:09:58+02:00 on lorien
See for support information.
Loaded subsystems:
Python 1.1, target Intel x86
CLOS based on Gerd's PCL 2004/04/14 03:32:47
* (load "load")
; Loading #P"/home/paolo/src/cells-gtk-2005-05-29/load.lisp".
;;; More loading...
Done! Now try (test-gtk::gtk-demo)
T
* (load "reload-global-table")
; Loading #P"/home/paolo/src/cells-gtk-2005-05-29/reload-global-table.x86f".
T
* sys::*global-table*
((#.(SYSTEM:INT-SAP #x08073B60) . "/usr/lib/libgtk-x11-2.0.so")
(#.(SYSTEM:INT-SAP #x08070300) . "/usr/lib/libgdk-x11-2.0.so")
(#.(SYSTEM:INT-SAP #x0806FBC8) . "/usr/lib/libgthread-2.0.so")
(#.(SYSTEM:INT-SAP #x0806F7B0) . "/usr/lib/libglib-2.0.so")
(#.(SYSTEM:INT-SAP #x0806F570) . "/usr/lib/libgobject-2.0.so")
(#.(SYSTEM:INT-SAP #x40014F90)))
* (pushnew 'reload-global-table ext:*after-save-initializations*)
(RELOAD-GLOBAL-TABLE NEW-ASSEM::FORGET-OUTPUT-BLOCKS
MULTIPROCESSING::INIT-MULTI-PROCESSING
LISP::PACKAGE-LOCKS-INIT
KERNEL::RAND-MT19937-INITIALIZER
ALIEN::RESTORE-CALLBACKS)
* (save-lisp "cells-gtk-demo.core" :init-function #'test-gtk::gtk-demo)
[Doing purification: Done.]
[Undoing binding stack... done]
[Saving current lisp image into cells-gtk-demo.core:
Writing 25368120 bytes from the Read-Only space at 0x10000000.
Writing 5791368 bytes from the Static space at 0x28000000.
Writing 4096 bytes from the Dynamic space at 0x58000000.
done.]
paolo at plato:~/src/cells-gtk-2005-05-29$ cmucl -core cells-gtk-demo.core
; Loading #P"/home/paolo/.cmucl-init.lisp".
CMU Common Lisp 19b (19B), running on plato
With core: /home/paolo/src/cells-gtk-2005-05-29/cells-gtk-demo.core
Dumped on: Sat, 2005-07-09 11:41:01+02:00 on plato
See for support information.
Loaded subsystems:
Python 1.1, target Intel x86
CLOS based on Gerd's PCL 2004/04/14 03:32:47
;;; The Gtk-CRITICALs are harmless and are displayed also when the
;;; application works fine
(:4832): Gtk-CRITICAL **: file gtkbox.c: line 374 (gtk_box_pack_start): assertion `child->parent == NULL' failed
(:4832): Gtk-CRITICAL **: file gtkbox.c: line 374 (gtk_box_pack_start): assertion `child->parent == NULL' failed
(:4832): Gtk-WARNING **: Attempting to add a widget with type GtkAccelLabel to a GtkImageMenuItem, but as a GtkBin subclass a GtkImageMenuItem can only contain one widget at a time; it already contains a widget of type GtkAccelLabel
Error in function UNIX::SIGSEGV-HANDLER: Segmentation Violation at #x1145B958.
[Condition of type SIMPLE-ERROR]
Debug (type H for help)
(UNIX::SIGSEGV-HANDLER #
#
#.(SYSTEM:INT-SAP #x3FFFC388))
Source: Error finding source:
Error in function DEBUG::GET-FILE-TOP-LEVEL-FORM: Source file no longer exists:
target:code/signal.lisp.
0] backtrace
0: (UNIX::SIGSEGV-HANDLER #
#
#.(SYSTEM:INT-SAP #x3FFFC388))
1: (UNIX::SIGSEGV-HANDLER 3
#
#
#.(SYSTEM:INT-SAP #x3FFFC388))[:EXTERNAL]
2: ("call_into_lisp+#x8C [#x8054A1C] cmucl")
3: ("funcall3+#x29 [#x805482C] cmucl")
4: ("interrupt_handle_now+#xEE [#x80504ED] cmucl")
5: ("NIL+#x8055053 [#x8055053] cmucl")
6: ("NIL+#x805508B [#x805508B] cmucl")
7: (CELLS-GTK::TREE-VIEW-RENDER-CELL-CALLBACK 4 0)
8: ("call_into_lisp+#x8C [#x8054A1C] cmucl")
9: ("funcall3+#x29 [#x805482C] cmucl")
10: ("Foreign function call land")
11: ("g_closure_invoke+#xB0 [#x407982C0] /usr/lib/libgobject-2.0.so.0")
12: ("NIL+#x407AC145 [#x407AC145] /usr/lib/libgobject-2.0.so.0")
13: ("g_signal_emit_valist+#x737 [#x407AB2A7] /usr/lib/libgobject-2.0.so.0")
14: ("g_signal_emit+#x34 [#x407AB5A4] /usr/lib/libgobject-2.0.so.0")
15: ("gtk_toggle_button_toggled+#x55 [#x404C07E5] /usr/lib/libgtk-x11-2.0.so")
16: ("NIL+#x404C0B92 [#x404C0B92] /usr/lib/libgtk-x11-2.0.so")
17: ("g_cclosure_marshal_VOID__VOID+#xA1 [#x407AC7B1] /usr/lib/libgobject-2.0.so.0")
18: ("NIL+#x40798657 [#x40798657] /usr/lib/libgobject-2.0.so.0")
19: ("g_closure_invoke+#xB0 [#x407982C0] /usr/lib/libgobject-2.0.so.0")
20: ("NIL+#x407ABB0E [#x407ABB0E] /usr/lib/libgobject-2.0.so.0")
21: ("g_signal_emit_valist+#x737 [#x407AB2A7] /usr/lib/libgobject-2.0.so.0")
22: ("g_signal_emit+#x34 [#x407AB5A4] /usr/lib/libgobject-2.0.so.0")
23: ("gtk_button_clicked+#x55 [#x4035B9E5] /usr/lib/libgtk-x11-2.0.so")
24: ("gtk_toggle_button_set_active+#x5E [#x404C068E] /usr/lib/libgtk-x11-2.0.so")
25: (GTK-FFI::GTK_TOGGLE_BUTTON_SET_ACTIVE # 1)
26: (GTK-FFI:GTK-TOGGLE-BUTTON-SET-ACTIVE # T)
27: ("LAMBDA (G3332 G3333)" # # CELLS-GTK:ACTIVE COOL
...)
28: ("DEFUN C-OUTPUT-SLOT")
29: (CELLS::FINISH-BUSINESS)
30: (CELLS::CALL-WITH-INTEGRITY #
(:OUTPUT NIL)
#)
31: ((METHOD CELLS:MD-AWAKEN NIL (CELLS::MODEL-OBJECT)) (#(0 0) . #())
# TEST-GTK)
32: (CELLS:TO-BE TEST-GTK)
33: (CELLS-GTK:START-APP TEST-GTK::TEST-GTK :DEBUG NIL)
34: ((LABELS LISP::RESTART-LISP
SAVE-LISP))
0]
--------------------------------------------------------------------
--
Lisp Propulsion Laboratory log - http://www.paoloamoroso.it/log
From amoroso at mclink.it Sun Jul 10 19:40:41 2005
From: amoroso at mclink.it (Paolo Amoroso)
Date: Sun, 10 Jul 2005 21:40:41 +0200
Subject: [cells-gtk-devel] CMUCL sigsegv when starting saved cells-gtk
image
References: <87k6jy6bmv.fsf@plato.moon.paoloamoroso.it>
Message-ID: <87slymla9y.fsf@plato.moon.paoloamoroso.it>
Paolo Amoroso writes:
> I am trying to run a dumped image containing a cells-gtk application,
> more specifically gtk-demo. When I start the dumped image, I get an
> error just after the splash screen.
I have done some progress. I realized that I didn't have
libcellsgtk.so properly compiled and installed. After doing that, the
global table includes the library:
* sys::*global-table*
((#.(SYSTEM:INT-SAP #x08074280) . "/usr/lib/libcellsgtk.so")
(#.(SYSTEM:INT-SAP #x08073B60) . "/usr/lib/libgtk-x11-2.0.so")
(#.(SYSTEM:INT-SAP #x08070300) . "/usr/lib/libgdk-x11-2.0.so")
(#.(SYSTEM:INT-SAP #x0806FBC8) . "/usr/lib/libgthread-2.0.so")
(#.(SYSTEM:INT-SAP #x0806F7B0) . "/usr/lib/libglib-2.0.so")
(#.(SYSTEM:INT-SAP #x0806F570) . "/usr/lib/libgobject-2.0.so")
(#.(SYSTEM:INT-SAP #x40014F90)))
This time, when I start the saved image, I get this different error:
paolo at plato:~/src/cells-gtk-2005-05-29$ cmucl -core cells-gtk-demo.core
Error in function RELOAD-GLOBAL-TABLE:
Couldn't open library "/usr/lib/libcellsgtk.so": NIL
[Condition of type SIMPLE-ERROR]
Restarts:
0: [ABORT] Skip remaining initializations.
Debug (type H for help)
(RELOAD-GLOBAL-TABLE)
Source:
; File: /home/paolo/src/cells-gtk-2005-05-29/reload-global-table.lisp
(ERROR "Couldn't open library ~S: ~S" LIB-PATH (SYSTEM::DLERROR))
0] backtrace
0: (RELOAD-GLOBAL-TABLE)
1: ((LABELS LISP::%RESTART-LISP
SAVE-LISP))
2: ((LABELS LISP::RESTART-LISP
SAVE-LISP))
0]
It looks like sys::dlopen in reload-global-table fails:
http://www.mail-archive.com/cmucl-help at cons.org/msg01289.html
When I do `make' in root/gtk-ffi, I get these messages:
paolo at plato:~/src/cells-gtk-2005-05-29/root/gtk-ffi$ make
gcc -c gtk-adds.c `pkg-config --cflags --libs gtk+-2.0`
gcc: --export-dynamic: linker input file unused because linking not done
gcc: -lgtk-x11-2.0: linker input file unused because linking not done
gcc: -lgdk-x11-2.0: linker input file unused because linking not done
gcc: -latk-1.0: linker input file unused because linking not done
gcc: -lgdk_pixbuf-2.0: linker input file unused because linking not done
gcc: -lm: linker input file unused because linking not done
gcc: -lpangoxft-1.0: linker input file unused because linking not done
gcc: -lpangox-1.0: linker input file unused because linking not done
gcc: -lpango-1.0: linker input file unused because linking not done
gcc: -lgobject-2.0: linker input file unused because linking not done
gcc: -lgmodule-2.0: linker input file unused because linking not done
gcc: -ldl: linker input file unused because linking not done
gcc: -lglib-2.0: linker input file unused because linking not done
gcc -shared -o libcellsgtk.so gtk-adds.o
Is this related?
Paolo
--
Lisp Propulsion Laboratory log - http://www.paoloamoroso.it/log
From amoroso at mclink.it Mon Jul 11 06:46:39 2005
From: amoroso at mclink.it (Paolo Amoroso)
Date: Mon, 11 Jul 2005 08:46:39 +0200
Subject: [cells-gtk-devel] CMUCL sigsegv when starting saved cells-gtk
image
In-Reply-To: <87slymla9y.fsf@plato.moon.paoloamoroso.it> (Paolo Amoroso's
message of "Sun, 10 Jul 2005 21:40:41 +0200")
References: <87k6jy6bmv.fsf@plato.moon.paoloamoroso.it>
<87slymla9y.fsf@plato.moon.paoloamoroso.it>
Message-ID: <87zmstkfg0.fsf@plato.moon.paoloamoroso.it>
Paolo Amoroso writes:
> When I do `make' in root/gtk-ffi, I get these messages:
>
> paolo at plato:~/src/cells-gtk-2005-05-29/root/gtk-ffi$ make
> gcc -c gtk-adds.c `pkg-config --cflags --libs gtk+-2.0`
> gcc: --export-dynamic: linker input file unused because linking not done
> gcc: -lgtk-x11-2.0: linker input file unused because linking not done
[...]
> Is this related?
Probably not, because the demo works fine with my setup.
Paolo
--
Lisp Propulsion Laboratory log - http://www.paoloamoroso.it/log