guile-user
[Top][All Lists]
Advanced

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

opening wrong version libguilereadline


From: Arno Peters
Subject: opening wrong version libguilereadline
Date: Mon, 16 Sep 2002 02:04:34 +0200
User-agent: Mutt/1.4i

On Thu, Aug 29, 2002 at 11:24:03AM -0500, Rob Browning wrote:
> Martin Grabmueller <address@hidden> writes:
> 
> >> This is strange.  Guile 1.5 uses different names for its dynamically
> >> linked libraries, as compared to 1.3.4.  For example, libguilereadline
> >> is now libguilereadline-v-12.  There shouldn't be any conflict with
> >> old libs.
> >
> > I haven't tried it again yet, but strace told me that Guile somehow
> > tried to load the old libguilereadline.so, which in turn tried to load
> > libguile.so.6, which didn't work and caused a nonsense `file not
> > found' message from libtdl...
> 
> Hmm -- can you find out which file guile is loading that's then
> loading libguilereadline?  I'm wondering if it's finding the wrong
> readline.scm, or if somehow we're not loading the versioned
> libguilereadline like I thought we were.

I am working with a recent Guile CVS snapshot in /usr/local.  I also
have Guile 1.4 installed in /usr.  I am unable to use readline in
version 1.7; Guile aborts due to a SIGKILL signal.  By contrast
version 1.4 works ok.  Below is a strace of Guile 1.7.0 that shows
what files are read.  The actual strace is much larger and I can mail
it upon request.

From what I can judge, libtool picks up the wrong version of the
library.  This may point to a bug in handling multiple versions of the
same library in different locations.


$ guile --version 
Guile 1.7.0
...
$ strace guile -c '(use-modules (ice-9 readline))'
...
open("/usr/local/share/guile/1.7.0/ice-9/boot-9.scm", O_RDONLY) = 3
open("/usr/local/share/guile/1.7.0/ice-9/r4rs.scm", O_RDONLY) = 4
open("/usr/local/share/guile/1.7.0/ice-9/arrays.scm", O_RDONLY) = 4
open("/usr/local/share/guile/1.7.0/ice-9/posix.scm", O_RDONLY) = 4
open("/usr/local/share/guile/1.7.0/ice-9/networking.scm", O_RDONLY) = 4
open("/usr/local/share/guile/1.7.0/ice-9/readline.scm", O_RDONLY) = 3
open("/usr/local/share/guile/1.7.0/ice-9/session.scm", O_RDONLY) = 4
open("/usr/local/share/guile/1.7.0/ice-9/documentation.scm", O_RDONLY) = 5
open("/usr/local/share/guile/1.7.0/ice-9/rdelim.scm", O_RDONLY) = 6
open("/usr/local/share/guile/1.7.0/ice-9/regex.scm", O_RDONLY) = 5
open("/usr/local/share/guile/1.7.0/ice-9/buffered-input.scm", O_RDONLY) = 4
open("/lib/libguilereadline.la", O_RDONLY) = -1 ENOENT (No such file or 
directory)
open("/usr/lib/libguilereadline.la", O_RDONLY) = 4
open("/usr/local/lib/libguilereadline.a", O_RDONLY) = 4
open("/usr/lib/libguilereadline.so.9", O_RDONLY) = 4
open("/usr/local/lib/libguile.so.9", O_RDONLY) = -1 ENOENT (No such file or 
directory)
open("/etc/ld.so.cache", O_RDONLY)      = 4
open("/usr/lib/libguile.so.9", O_RDONLY) = 4
open("/usr/local/lib/libreadline.so.4", O_RDONLY) = -1 ENOENT (No such file or 
directory)
open("/lib/libreadline.so.4", O_RDONLY) = 4
...
munmap(0x40286000, 42748)               = 0
times({tms_utime=10, tms_stime=1, tms_cutime=0, tms_cstime=0}) = 12500784
times({tms_utime=10, tms_stime=1, tms_cutime=0, tms_cstime=0}) = 12500784
times({tms_utime=11, tms_stime=1, tms_cutime=0, tms_cstime=0}) = 12500785
brk(0x807d000)                          = 0x807d000
rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
getpid()                                = 12287
kill(12287, SIGABRT)                    = 0
--- SIGABRT (Aborted) ---
+++ killed by SIGABRT +++


The content of /usr/lib/libguilereadline.la is:

# libguilereadline.la - a libtool library file
# Generated by ltmain.sh - GNU libtool 1.4.2a (1.922.2.79 2001/11/28 21:50:31)
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

# The name that we can dlopen(3).
dlname='libguilereadline.so.9'

# Names of this library.
library_names='libguilereadline.so.9.0.0 libguilereadline.so.9 
libguilereadline.so'

# The name of the static archive.
old_library='libguilereadline.a'

# Libraries that this one depends upon.
dependency_libs=' /usr/lib/libguile.la /usr/lib/libltdl.la -ldl 
/usr/lib/libqthreads.la -lpthread -lm -lreadline -lncurses'

# Version information for libguilereadline.
current=9
age=0
revision=0

# Is this an already installed library?
installed=yes

# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''

# Directory that this library needs to be installed in:
libdir='/usr/lib'


The content of /usr/local/lib/libguile-readline.la is:

# libguilereadline.la - a libtool library file
# Generated by ltmain.sh - GNU libtool 1.4.2a (1.922.2.100 2002/06/26 07:25:14)
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

# The name that we can dlopen(3).
dlname='libguilereadline.so.10'

# Names of this library.
library_names='libguilereadline.so.10.0.0 libguilereadline.so.10 
libguilereadline.so'

# The name of the static archive.
old_library='libguilereadline.a'

# Libraries that this one depends upon.
dependency_libs=' /usr/local/lib/libguile.la /usr/lib/libltdl.la -ldl -lcrypt 
-lm -lreadline -lncurses'

# Version information for libguilereadline.
current=10
age=0
revision=0

# Is this an already installed library?
installed=yes

# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''

# Directory that this library needs to be installed in:
libdir='/usr/local/lib'

Attachment: pgpa0FBV8cafT.pgp
Description: PGP signature


reply via email to

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