[Top][All Lists]

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

Re: Readline support in Cygwin

From: Eli Zaretskii
Subject: Re: Readline support in Cygwin
Date: Sat, 12 Jan 2013 10:48:39 +0200

> Date: Fri, 11 Jan 2013 22:41:25 -0600
> From: Akop Pogosian <address@hidden>
> On Wed, Jan 9, 2013 at 3:57 PM, Ludovic Courtès <address@hidden> wrote:
> > Hi!
> >
> > Akop Pogosian <address@hidden> skribis:
> >
> >> # ERROR: In procedure load-extension:
> >> # ERROR: In procedure dynamic-link: file: "libguilereadline-v-18",
> >> message: "The specified module could not be found."
> >
> > [...]
> >
> >> # $ ls software/packages/guile-2.0.7/lib/
> >> # guile 
> >> # libguile-2.0.a  libguilereadline-v-18.a  pkgconfig
> >
> > As you can see, you only have a static version of libguilereadline,
> > which is why ‘dynamic-link’ fails.
> Indeed. I am really confused about why there are no shared libraries
> in /usr/lib under cygwin. However, they are installed in /usr/bin
> under strange names such as /usr/bin/cygreadline6.dll

Windows isn't Posix.  A Windows incarnation of a shared library is a
DLL file that should be in a directory on PATH, because that's where
the Windows dynamic link procedure looks for them.

As for the "cyg" prefix, I believe this is to distinguish the
Cygwin-compiled DLLs from native Windows DLL, whose names should be
libreadline6.dll (that's what I have here, having built Readline with
MinGW).  Since native and Cygwin DLLs are incompatible, keeping the
names different helps avoiding weird crashes when both MinGW and
Cygwin tools are installed on the same system.

> Is guile build system supposed to pick up shared libraries in those
> locations

It should.  If it doesn't, that's a bug, IMO.

reply via email to

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