4

I'm trying to get guile-gnome working with the Guile installed on my machine. I've downloaded and built guile-gnome according to the instructions here, but no matter what prefix I give to it, I can never seem to get one of the sample GUI programs to execute. What prefix should I install with? For the record, my current %load-path from the Guile toplevel is

$1 = ("/usr/share/guile/2.0" "/usr/share/guile/site/2.0" "/usr/share/guile/site" "/usr/share/guile")

Edit: I am on Manjaro GNU/Linux, using Guile 2.0.11, and the error message I get from the first sample program listed in the link I posted is :

;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
;;;       or pass the --no-auto-compile argument to disable.
;;; compiling /home/koz/Documents/Programming/hello.scm
;;; WARNING: compilation of /home/koz/Documents/Programming/hello.scm failed:
;;; ERROR: no code for module (gnome gobject)
Backtrace:
In ice-9/boot-9.scm:
 157: 17 [catch #t #<catch-closure 23c4c00> ...]
In unknown file:
   ?: 16 [apply-smob/1 #<catch-closure 23c4c00>]
In ice-9/boot-9.scm:
  63: 15 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 14 [eval # #]
In ice-9/boot-9.scm:
2401: 13 [save-module-excursion #<procedure 23e1a00 at ice-9/boot-9.scm:4045:3 ()>]
4052: 12 [#<procedure 23e1a00 at ice-9/boot-9.scm:4045:3 ()>]
1724: 11 [%start-stack load-stack ...]
1729: 10 [#<procedure 289cd80 ()>]
In unknown file:
   ?: 9 [primitive-load "/home/koz/Documents/Programming/hello.scm"]
In ice-9/eval.scm:
 505: 8 [#<procedure 22946a0 at ice-9/eval.scm:499:4 (exp)> (use-modules # # #)]
In ice-9/psyntax.scm:
1106: 7 [expand-top-sequence ((use-modules (oop goops) (gnome gobject) ...)) () ...]
 989: 6 [scan ((use-modules (oop goops) (gnome gobject) ...)) () ...]
 279: 5 [scan ((# #) #(syntax-object *unspecified* # #)) () (()) ...]
In ice-9/boot-9.scm:
3597: 4 [process-use-modules (((oop goops)) ((gnome gobject)) ((gnome gtk)))]
 700: 3 [map #<procedure 23510c0 at ice-9/boot-9.scm:3597:25 (mif-args)> (# # #)]
3598: 2 [#<procedure 23510c0 at ice-9/boot-9.scm:3597:25 (mif-args)> (#)]
2867: 1 [resolve-interface (gnome gobject) #:select ...]
In unknown file:
   ?: 0 [scm-error misc-error #f "~A ~S" ("no code for module" (gnome gobject)) #f]

ERROR: In procedure scm-error:
ERROR: no code for module (gnome gobject)
Koz Ross
  • 3,040
  • 2
  • 24
  • 44
  • 1. What OS and distro are you on? 2. What version of Guile are you on? 3. What happens when you try to run a sample program? – C. K. Young Oct 06 '14 at 10:57
  • @ChrisJester-Young: Added the information you asked for as an edit to the original post. – Koz Ross Oct 07 '14 at 20:45
  • I was rather hoping you'd say Ubuntu or Debian, since I have those on hand. :-P Anyway, where is your `gnome/gobject.go` file? The toplevel directory for that needs to be added to your `GUILE_LOAD_PATH`. – C. K. Young Oct 16 '14 at 05:26
  • I tried running ``find / -name 'gobject.go'``, and got nothing, even though I definitely have Gtk installed (since I can compile stuff with it from C). – Koz Ross Oct 16 '14 at 09:02
  • Huh, how bizarre. Maybe `make install` didn't install the `.go` files. What about `gobject.scm`? – C. K. Young Oct 16 '14 at 13:12
  • I got four hits: ``/home/koz/guile-gnome-platform/glib/gnome/gw/support/gobject.scm``, ``/home/koz/guile-gnome-platform/glib/gnome/gw/gobject.scm``, ``/home/koz/guile-gnome-platform/glib/gnome/gobject.scm``, and ``/home/koz/guile-gnome-platform/glib/gnome/gobject/gobject.scm``. – Koz Ross Oct 16 '14 at 18:58
  • Did you run `make install` (as root)? – C. K. Young Oct 16 '14 at 18:59
  • Just ran it again now to be sure. There's now a ``gobject.scm`` in ``/usr/share/guile/share/guile-gnome-2`` in several places. Still no ``gobject.go``, though. – Koz Ross Oct 16 '14 at 19:38
  • Okay. Does your code work now? – C. K. Young Oct 16 '14 at 19:44
  • No - same error as before. – Koz Ross Oct 16 '14 at 19:46

1 Answers1

3

Okay, I finally got it working on my Ubuntu 14.04 system. I used --prefix=/usr/local so here's the Guile command I had to use:

LD_LIBRARY_PATH=/usr/local/lib/guile-gnome-2 guile -L /usr/local/share/guile-gnome-2

Since (from your comments) it appears you're using --prefix=/usr, you'd probably have to use:

LD_LIBRARY_PATH=/usr/lib/guile-gnome-2 guile -L /usr/share/guile-gnome-2
C. K. Young
  • 219,335
  • 46
  • 382
  • 435