guile-user
[Top][All Lists]
Advanced

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

dynamic-link problem


From: Bill Gribble
Subject: dynamic-link problem
Date: Sun, 22 Jul 2001 09:20:55 -0500
User-agent: Mutt/1.3.18i

I'm having some trouble with dynamic-link and I'm hoping there's
something simple I'm overlooking.

Using guile-1.4 on a Debian x86 machine, this works fine: 

(let ((lib (dynamic-link "libc.so.6")))
  (if lib
    (display "link ok\n")
    (display "something bad happened\n")))
        
But this doesn't:

(let ((lib (dynamic-link "libgncmodule.so.0")))
  (if lib
    (display "link ok\n")
    (display "something bad happened\n")))

ERROR: In procedure dynamic-link:
ERROR: file not found

... where libgncmodule.so.0 is a libtool library that is in my
LD_LIBRARY_PATH and my LTDL_LIBRARY_PATH (as are all its dependent
libraries).

The strangest thing is that when I strace the above code, I see the
library in question being successfully located and opened:

[pid 10247] open("../.libs/libgncmodule.so.0", O_RDONLY) = 3
[pid 10247] read(3, 
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\26"..., 1024) = 1024

The dynamic-linked library is itself linked against several other
libraries, and I see them being located and opened in turn:  

[pid 10247] open("/usr/local/g-wrap//lib/libg-wrap-runtime-guile.so.2", 
O_RDONLY) = 3
[pid 10247] read(3, "address@hidden"..., 1024) = 1024
[pid 10247] open("/lib/libpopt.so.0", O_RDONLY) = 3
[pid 10247] read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 
\21\0\000"..., 1024) = 1024

So what's failing?  Any thoughts appreciated. 

Thanks,
Bill Gribble






reply via email to

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