unofficial mirror of bug-guile@gnu.org 
 help / color / mirror / Atom feed
* guile can't find dynamically loaded library
@ 2002-10-01  1:08 Michael Vanier
  2002-10-03 18:34 ` Marius Vollmer
  0 siblings, 1 reply; 7+ messages in thread
From: Michael Vanier @ 2002-10-01  1:08 UTC (permalink / raw)



Hi,

I've been walking through the guile info documentation, specifically the
section on defining your own guile extensions.  This is for guile-1.6
running on a Debian GNU/Linux system.  I am unable to get guile to find the
location of the shared library that I created (libguile-bessel.so).  I have
tried everything I can think of.  I have put the file into /usr/lib and it
still couldn't find it!  I setenv'd LTDL_LIBRARY_PATH to the current
directory; no dice (is LTDL a misprint?).  I always get the following
message:

guile> (load-extension "libguile-bessel" "init_bessel")
standard input:1:1: In procedure dynamic-link in expression (load-extension "libguile-bessel" "init_bessel"):
standard input:1:1: file: "libguile-bessel", message: "file not found"
ABORT: (misc-error)

Type "(backtrace)" to get more information or "(debug)" to enter the debugger.
guile> 

I suspect that the documentation is incorrect.  Can you clarify what's
needed to inform guile of where a shared library is?

Mike





_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: guile can't find dynamically loaded library
  2002-10-01  1:08 guile can't find dynamically loaded library Michael Vanier
@ 2002-10-03 18:34 ` Marius Vollmer
  2002-10-05  6:05   ` Michael Vanier
  0 siblings, 1 reply; 7+ messages in thread
From: Marius Vollmer @ 2002-10-03 18:34 UTC (permalink / raw)
  Cc: bug-guile

Michael Vanier <mvanier@cs.caltech.edu> writes:

> I have put the file into /usr/lib and it still couldn't find it!

This is (another) bug in libltdl.  It first tries the ".la" extenstion
and then should continue with the ".so" extension.  However, it
incorrectly stops when no ".la" file could be found.

A workaround is to use

  (load-extension "libguile-bessel.so" "init_bessel")

for the time being.

We will release a Guile 1.6.1 shortly that will always use a libltdl
with this bug fixed.

Thanks for reporting this!

-- 
GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3  331E FAF8 226A D5D4 E405


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: guile can't find dynamically loaded library
  2002-10-03 18:34 ` Marius Vollmer
@ 2002-10-05  6:05   ` Michael Vanier
  2002-10-05 18:35     ` Paul Jarc
  2002-10-08 21:30     ` Marius Vollmer
  0 siblings, 2 replies; 7+ messages in thread
From: Michael Vanier @ 2002-10-05  6:05 UTC (permalink / raw)
  Cc: bug-guile


Well, it's even more hosed that you realize :-(  When I do what you say, it
reports that it can't find libguile-bessel.so in /usr/lib.  When I copy
libguile-bessel.so into /usr/lib, it reports that it can't find it in
/usr/local/lib (the next path in my LD_LIBRARY_PATH).  And so forth.  When
I manually set my LD_LIBRARY_PATH to just /usr/lib, it complains that it
can't find libguile-bessel.so in /lib. It seems to be impossible to make it
happy.  Output looks like this:

guile> (load-extension "libguile-bessel.so" "init_bessel")
standard input:1:1: In procedure dynamic-link in expression (load-extension "libguile-bessel.so" "init_bessel"):
standard input:1:1: file: "libguile-bessel.so", message: "/lib/libguile-bessel.so: cannot open shared object file: No such file or directory"
ABORT: (misc-error)

Type "(backtrace)" to get more information or "(debug)" to enter the debugger.


Thanks for your help,

Mike

> From: Marius Vollmer <mvo@zagadka.ping.de>
> Date: 03 Oct 2002 20:34:11 +0200
> 
> Michael Vanier <mvanier@cs.caltech.edu> writes:
> 
> > I have put the file into /usr/lib and it still couldn't find it!
> 
> This is (another) bug in libltdl.  It first tries the ".la" extenstion
> and then should continue with the ".so" extension.  However, it
> incorrectly stops when no ".la" file could be found.
> 
> A workaround is to use
> 
>   (load-extension "libguile-bessel.so" "init_bessel")
> 
> for the time being.
> 
> We will release a Guile 1.6.1 shortly that will always use a libltdl
> with this bug fixed.
> 
> Thanks for reporting this!
> 
> -- 
> GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3  331E FAF8 226A D5D4 E405
> 


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: guile can't find dynamically loaded library
  2002-10-05  6:05   ` Michael Vanier
@ 2002-10-05 18:35     ` Paul Jarc
  2002-10-08 21:30     ` Marius Vollmer
  1 sibling, 0 replies; 7+ messages in thread
From: Paul Jarc @ 2002-10-05 18:35 UTC (permalink / raw)
  Cc: mvo, bug-guile

Michael Vanier <mvanier@cs.caltech.edu> wrote:
> Well, it's even more hosed that you realize :-(  When I do what you say, it
> reports that it can't find libguile-bessel.so in /usr/lib.  When I copy
> libguile-bessel.so into /usr/lib, it reports that it can't find it in
> /usr/local/lib (the next path in my LD_LIBRARY_PATH).  And so forth.

libltdl is misinterpreting the return value of access().  This bug has
been fixed in Guile before, but apparently the fix didn't make its way
into all the CVS branches.


paul


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: guile can't find dynamically loaded library
  2002-10-05  6:05   ` Michael Vanier
  2002-10-05 18:35     ` Paul Jarc
@ 2002-10-08 21:30     ` Marius Vollmer
  2002-10-08 21:42       ` Michael Vanier
  1 sibling, 1 reply; 7+ messages in thread
From: Marius Vollmer @ 2002-10-08 21:30 UTC (permalink / raw)
  Cc: bug-guile

Michael Vanier <mvanier@cs.caltech.edu> writes:

> Well, it's even more hosed that you realize :-(

Oops, did you configure Guile with "--enable-ltdl-install"?  Sorry, I
forgot to tell you about this.

-- 
GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3  331E FAF8 226A D5D4 E405


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: guile can't find dynamically loaded library
  2002-10-08 21:30     ` Marius Vollmer
@ 2002-10-08 21:42       ` Michael Vanier
  2002-10-08 22:40         ` Marius Vollmer
  0 siblings, 1 reply; 7+ messages in thread
From: Michael Vanier @ 2002-10-08 21:42 UTC (permalink / raw)
  Cc: bug-guile


That fixed it.  I still had to specify the .so extension, but that's OK for
now.   I didn't even have to specify an LTDL_LIBRARY_PATH environment
variable ;-)

I'm pretty happy to see guile catching up with other scripting languages.
I'm especially happy with how easy it is to write extensions; I don't know
of any other scripting language that has such a trivially simple extension
mechanism.

Thanks,

Mike

> From: Marius Vollmer <mvo@zagadka.ping.de>
> Date: 08 Oct 2002 23:30:14 +0200
> 
> Michael Vanier <mvanier@cs.caltech.edu> writes:
> 
> > Well, it's even more hosed that you realize :-(
> 
> Oops, did you configure Guile with "--enable-ltdl-install"?  Sorry, I
> forgot to tell you about this.
> 
> -- 
> GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3  331E FAF8 226A D5D4 E405
> 


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: guile can't find dynamically loaded library
  2002-10-08 21:42       ` Michael Vanier
@ 2002-10-08 22:40         ` Marius Vollmer
  0 siblings, 0 replies; 7+ messages in thread
From: Marius Vollmer @ 2002-10-08 22:40 UTC (permalink / raw)
  Cc: bug-guile

Michael Vanier <mvanier@cs.caltech.edu> writes:

> I'm pretty happy to see guile catching up with other scripting languages.
> I'm especially happy with how easy it is to write extensions; I don't know
> of any other scripting language that has such a trivially simple extension
> mechanism.

I'm very happy to hear this!

-- 
GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3  331E FAF8 226A D5D4 E405


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2002-10-08 22:40 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-10-01  1:08 guile can't find dynamically loaded library Michael Vanier
2002-10-03 18:34 ` Marius Vollmer
2002-10-05  6:05   ` Michael Vanier
2002-10-05 18:35     ` Paul Jarc
2002-10-08 21:30     ` Marius Vollmer
2002-10-08 21:42       ` Michael Vanier
2002-10-08 22:40         ` Marius Vollmer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).