Den 2010-03-27 17:08 skrev Charles Wilson:
On 3/27/2010 11:23 AM, David Rothenberger wrote:
On 3/27/2010 7:47 AM, Charles Wilson wrote:
Obviously, something is going wrong there. What happens when the .la
file isn't found, is that libltdl falls back on cygwin's dlopen(), which
simply looks in the normal search path for the DLL -- and that
apparently works.
I'm pretty sure it's libsasl2 that's the culprit, but since its DLLs are
in /usr/lib/sasl2, which is not in the PATH, I don't see how that could
work.
Ah, but cygwin's dlopen() is sensitive to LD_LIBRARY_PATH -- and you can
also give dlopen() the full path to where you expect the DLL to be.
Obviously libsasl2 "knows" about /usr/lib/sasl2/, because that's where
it's currently looking for the .la files. So, I wouldn't be surprised
if, in the absense of .la files messing up the
libsasl2->libltdl->.la->.dll lookup, the libsasl2->libltdl->.dll works fine.
Hey...I have an idea. NORMALLY, the .la file says:
dlname='../bin/cygfoo-N.dll'
This tells libltdl how to find the DLL, which is not normally installed
in the /usr/lib heirarchy on cygwin. However, in this case, the sasl2
dlls ARE in /usr/lib/sasl2.
So, the .la files OUGHT to say
dlname="cyg*.dll"
with no ../bin component. Plus, ../bin wouldn't be correct in this case
either, as /usr/lib/sasl2/../bin == /usr/lib/bin, which isn't right.
(FWIW, this bug was fixed only very recently in libtool).
So, I wonder if editing the .la files to specify the correct relative
path to the DLLs would fix it?
It could be that /usr/lib/sasl2/libsasldb.la lists /usr/lib/libdb-4.2.la
as a dependency_libs. libdb-4.2.la may or may not be installed (it's in
libdb4.2-devel which I don't have installed) and if it's missing libltdl
might be "confused".
If that's indeed the case, is it easy to add the needed dependency to
the libsasl2-devel package?
But I'm out on a limb here...
Cheers,
Peter
--
They are in the crowd with the answer before the question.
> Why do you dislike Jeopardy?
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple