[Top][All Lists]

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

Re: GNU G-Golf 0.8.0-rc-3 available for testing

From: pelzflorian (Florian Pelz)
Subject: Re: GNU G-Golf 0.8.0-rc-3 available for testing
Date: Thu, 18 Apr 2024 00:30:39 +0200
User-agent: Gnus/5.13 (Gnus v5.13)

Thank you for the work, David.  I have a question; how do you debug when
Guile crashes to terminal printing “Segmentation fault”`?

The long story so far:

I want to develop a GTK app with G-Golf.  I try to run it with
GNU Guix [1] (not Debian like you do, as far as I remember), because now
the Guix’ hard-working gnome team have added the needed version of
gobject-introspection to Guix.

I have cloned the g-golf repository:

$ cd ~/src
$ git clone ''

To create the app’s basic structure, I run Guile Hall [2]:

$ guix shell guile-hall
$ hall init --author "Florian Pelz" myapp --execute

This gives me a guix.scm file, where I add g-golf and gtk to the inputs:

(use-modules (gnu packages gtk)
             (gnu packages guile)
             (gnu packages guile-xyz)
             (guix transformations))
  (name "myapp")
  (inputs (list guile-3.0 gtk
                  '((with-commit . "guile-g-golf=v0.8.0-rc-3")))

Now I run:

$ guix shell
$ ~/src/g-golf/examples/gtk-4/hello-world.scm

It tells me dbus-launch must be running, so I add a d-bus service to my
Guix Home configuration.

(use-modules (gnu home services desktop))
  (packages […])
   (list (service home-dbus-service-type)

I run again the commands

$ guix shell
$ ~/src/g-golf/examples/gtk-4/hello-world.scm

successfully; a window is shown, though not responsive, with plenty of errors.

(hello-world.scm:12627): Gtk-WARNING **: 23:59:50.617: Unable to acquire the 
address of the accessibility bus: 
GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus 
was not provided by any .service files. If you are attempting to run GTK 
without a11y support, GTK_A11Y should be set to 'none'.

(hello-world.scm:12627): GLib-GObject-CRITICAL **: 23:59:51.067: cannot 
register existing type 'GdkPixbuf'  

(hello-world.scm:12627): GLib-GObject-CRITICAL **: 23:59:51.067: 
g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE 
(instance_type)' failed

(hello-world.scm:12627): GLib-GObject-CRITICAL **: 23:59:51.067: 
g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE 
(instance_type)' failed

(hello-world.scm:12627): GLib-CRITICAL **: 23:59:51.068: g_once_init_leave: 
assertion 'result != 0' failed      

However, when I now run:

$ ~/src/g-golf/examples/gtk-4/drawing-widget.scm

it crashes, displaying only “Segmentation fault”.  Same with

$ ~/src/g-golf/examples/gtk-4/peg-solitaire.scm

I run and read

$ info "(guile)Catching Exceptions"

but the techniques from there that I tried do not catch the segmentation
fault.  How did you go about debugging such errors?  Because I suppose
you must have been having such debugging sessions too.


[1] GNU Guix:
[2] Guix’ guile-hall package from

reply via email to

[Prev in Thread] Current Thread [Next in Thread]