This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: "svn --version" halts in 1.7.2-2


On 3/27/2010 9:08 AM, Charles Wilson wrote:
> 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 seems all the dlnames are set to "cyg*.dll" already.

>> It's interesting, though, that this behavior just surfaced. This didn't
>> occur with Cygwin 1.7.1 as far as I remember, and I'm sure I had
>> libsasl2-devel installed at that point. There must have been some change
>> in cygwin1.dll that has caused this.
> 
> Hmm.  I remember having transient problems with svn and many of the
> 1.7.0 snapshots, but they were intermittent and I had bigger fish to
> fry.  I don't recall any issues with 1.7.1, nor am I having any trouble
> with 1.7.2.  However, I would not be surprised if
> 
> (a) the "problem" is some intermittent interaction between
> cygwin-1.7.x's completely redesigned file name handling and an old,
> statically-linked, compiled during the 1.5.x era, libltdl
> 
> (b) the reason you didn't see it in 1.7.1 was just that -- it's
> intermittent, and you didn't HAPPEN to see it during that 3-month window.
> 
> (c) if libsasl2 had been linked against the DLL version of cygltdl, then
> perhaps none of this would have happened -- since I try to keep the
> officially distributed libtool more-or-less up to date, and rigorously
> tested.

Do you have libsasl2-devel installed? Are you saying that it's working
fine for you with /usr/lib/sasl2/*.la files?

-- 
David Rothenberger  ----  daveroth@acm.org

Household hint:
        If you are out of cream for your coffee, mayonnaise makes a
        dandy substitute.

--
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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]