This is the mail archive of the
mailing list for the Cygwin project.
Re: updated: guile-1.6.7-2, guile-1.7.2-2
Christopher Faylor wrote:
Either you're using an older version of cygwin or that's not a cygwin
error. It looks like something is calling LoadLibrary directly rather
than using the cygwin dlopen(). Cygwin was changed in 1.5.18 to use
strerror style output in the result of dlerror.
Until recently, libltdl had support for both direct LoadLibrary() and
dlopen(). I *thought* that dlopen() was preferred, and LoadLibrary()
was the fallback -- tho the errors posted by the OP seem to imply otherwise.
However, that's all water under the bridge, as the current version of
libltdl uses ONLY dlopen().
Perhaps guile should be re-libtoolized and/or Jan should confirm that he
has the most recent version of /usr/bin/cygltdl-3.dll (from
libltdl3-1.5.20-2) installed on his machine.
In any case, when using libltdl to manage modules and runtime-loading of
libraries (which guile does, I think), the .la files are important -- as
libltdl does NOT use LD_LIBRARY_PATH but rather explicitly dlopen()s
using the fullpathname of the target dll as computed by parsing the .la
file(s). But libltdl *should* be looking in the $(libdir) [*], and
never in $(bindir) for those .la files.
[*] there is also some what to set at project compile time (e.g. when
Jan compiles guile, not when I compile libltdl3) a specific module load
directory that libltdl3 will use to look for .la files, but I forgot how
that works and I'm too lazy to look in the docs right now.