This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

can't dynamic load guile-gtk+ bindings


I am using guile-core-19980329, gtk+-0.99.3, and guile-gtk from
gnome-0.12 built with gcc-2.7.2 under Sparc Solaris 2.6.

The "guile-gtk" binary works with "test-gtk.scm" and "calc.scm", but
when I try to load them into a plain guile I get a backtrace like the
one below.  Is dynamic library loading (dll) known to work with guile
under Sparc Solaris?  Am I missing something?


petersen[boron]~/src/gnome/guile-gtk% guile
guile> (load "test-gtk.scm")
ERROR: In procedure dynamic-link in expression (dynamic-link filename):
ERROR: ld.so.1: guile: fatal: relocation error: file /proj2/lang/mule-unsupported/solaris/share/guile/toolkits/libgtkstubs.so: symbol gtk_style_unref: referenced symbol not found
ABORT: (misc-error)

Type "(backtrace)" to get more information.
guile> (backtrace)

Backtrace:
 0* [primitive-load "/proj2/lang/mule-unsupported/solaris/share/guile/toolkits/gtk.scm"]
 1* (define-module (toolkits gtk) :use-module ...)
 2  (let* ((process-define-module process-define-module) (set-current-module set-current-module) (module #)) (set-current-module module) ...)
 3* [process-define-module ((toolkits gtk) :use-module (toolkits gtkstubs) ...)]
 4  (let* ((module-id #) (module #) (kws #)) (beautify-user-module! module) ...)
 5* (letrec ((loop #)) (loop kws (quote ())))
 6  [#<procedure (kws reversed-interfaces)> (:use-module (toolkits gtkstubs) :use-module ...) ()]
    ...
 7  (let* ((used-name #) (used-module #)) (if (not #) (begin # #)) ...)
 8* [resolve-module (toolkits gtkstubs)]
 9  (let ((full-name #)) (let (#) (or already #)))
    ...
10  (begin (if (or # #) (or # # ...)) (make-modules-in (current-module) full-name))
11* (if (or (null? maybe-autoload) (car maybe-autoload)) (or (try-module-linked name) (try-module-autoload name) ...))
12  (or (try-module-linked name) (try-module-autoload name) ...)
    ...
13  [try-module-dynamic-link (toolkits gtkstubs)]
14  (and (find-and-link-dynamic-module module-name) (init-dynamic-module module-name))
15* [find-and-link-dynamic-module (toolkits gtkstubs)]
16  (let ((subdir-and-libname #) (init #)) (let (# #) (letrec # #)))
    ...
17  [link-dynamic-module "/proj2/lang/mule-unsupported/solaris/share/guile/toolkits/libgtkstubs.so" "scm_init_toolkits_gtkstubs_module"]
18  (let ((dynobj #)) (dynamic-call initname dynobj) ...)
19* [dynamic-link "/proj2/lang/mule-unsupported/solaris/share/guile/toolkits/libgtkstubs.so"]


Thanks,
-- 
Jens-Ulrik Petersen	<http://www.kurims.kyoto-u.ac.jp/~petersen/>
---
"We are on the verge: Today our program proved Fermat's next-to-last
theorem."
		-- Epigrams in Programming, ACM SIGPLAN Sept. 1982