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] |
>>>>> "VM" == Vollmer Marius <mvo@zagadka.ping.de> writes:
VM> Jens-Ulrik Petersen <petersen@kurims.kyoto-u.ac.jp> writes:
>> Hmmm, it has never worked for me as far as I can remember...
>> Do you have any suggestions (for a C idiot like me) about what
>> I can do to investigate my problem further?
VM> Not many, I dont know anything about shared libs on Solaris
VM> myself. You might want to try some minimal tests like
guile> (define d (dynamic-link "libX11.so")) d
VM> #<dynamic-object "libX11.so">
guile> (dynamic-func "XOpenDisplay" d)
VM> 4014519492
Hmmm, I get:
petersen[boron]~% guile
guile> (define d (dynamic-link "libX11.so"))
guile> d
#<dynamic-object "libX11.so">
guile> (dynamic-func "XOpendisplay" d)
Backtrace:
0* [dynamic-func "XOpendisplay" #<dynamic-object "libX11.so">]
ERROR: In procedure dynamic-func in expression (dynamic-func "XOpendisplay" d):
ERROR: ld.so.1: guile: fatal: XOpendisplay: can't find symbol
ABORT: (misc-error)
VM> Wait I just noticed something...
VM> guile> (define d (dynamic-link "libgtk.so"))
VM> ERROR: In procedure dynamic-link in expression
VM> (dynamic-link "libgtk.so"): ERROR: ld.so.1: guile: fatal:
VM> relocation error: symbol not found: g_strcasecmp:
VM> referenced in /homes/vollmer/lib/libgtk.so ABORT:
VM> (misc-error)
VM> Type "(backtrace)" to get more information.
VM> This is analogous to your problem, right?
Probably. I have:
guile> (define d (dynamic-link "libgtk.so"))
Backtrace:
0* (define d (dynamic-link "libgtk.so"))
1* [define (define d (#@dynamic-link "libgtk.so")) (#<procedure (symbol define?)>)]
2* [dynamic-link "libgtk.so"]
ERROR: In procedure dynamic-link in expression (dynamic-link "libgtk.so"):
ERROR: ld.so.1: guile: fatal: relocation error: file /proj2/lang/mule-unsupported/solaris/lib/libgtk.so: symbol gdk_font_equal: referenced symbol not found
ABORT: (misc-error)
VM> I can only speculate here that libgtk.so needs libglib.so but
VM> does not contain enough information to have the dynloader load
VM> it automatically. This might be an instance of the
VM> interlibrary dependency stuff that libtool has some problems
VM> with.
VM> But libguilegtk.so loads fine:
guile> (define d (dynamic-link "libguilegtk.so")) d
VM> #<dynamic-object "libguilegtk.so">
VM> It looks like as if libguilegtk.so contains enough information
VM> about its dependencies on other libraries.
I get:
guile> (define d (dynamic-link "libguilegtk.so"))
Backtrace:
0* (define d (dynamic-link "libguilegtk.so"))
1* [define (define d (#@dynamic-link "libguilegtk.so")) (#<procedure (symbol define?)>)]
2* [dynamic-link "libguilegtk.so"]
ERROR: In procedure dynamic-link in expression (dynamic-link "libguilegtk.so"):
ERROR: ld.so.1: guile: fatal: relocation error: file /proj2/lang/mule-unsupported/solaris/lib/libguilegtk.so: symbol gtk_style_unref: referenced symbol not found
ABORT: (misc-error)
VM> You might want to try a recent gnome-guile snapshot.
>> Should that make a big difference? Maybe I will try later, if
>> I have time.
VM> Yes, it is likely that in later versions libguilegtk.so is
VM> build differently, so as to include this extra information on
VM> library dependencies.
Ok. Thanks, Marius.
--
Jens-Ulrik Petersen <http://www.kurims.kyoto-u.ac.jp/~petersen/>
---
Today is a good day to bribe a high-ranking public official.