[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: MinGW libraries

From: Branko Čibej <brane_at_xbc.nu>
Date: 2005-08-18 20:31:32 CEST

Ben Collins-Sussman wrote:

> On Aug 17, 2005, at 10:34 PM, Branko Čibej wrote:
>
>>> You can't prevent someone overwriting the dlls, but I don't think
>>> you need to worry about that scenario. If the official Sibversion
>>> installer installs C:\Program files\Subversion\bin\libsvn-1.dll
>>> then the end users heads be on it if they attempt to overwrite that
>>> with an earlier OR later version without using the corresponding
>>> installer.
>>
>>
>> A newer version should never be a problem. An older one could be.
>
> I don't understand how this problem is unique to Windows...?

If you quote this out of context, then of course it's not. :)

Unlike Unix, Windows doesn't have --rpath or LD_LIBRARY_PATH, and once a
DLL is loaded by one application, usually other applications that need
the same DLL will try to use it. ("Usually" because there are edge
cases). Encoding the exact API version in the DLL name avoids
compatibility problems.

Notice that we haven't had a single instance of the Windows SVN binary
picking up the wrong BDB shared lib, whilst these problems have been
relatively common on Unix. BDB's DLL naming convention automagically
avoids this issue.

(And as an interesting anecdote, when I originally added the runtime BDB
version checking to our code, I actually had to rename the BDB DLL in
order to test it on Windows. :)

-- Brane

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Aug 18 20:32:42 2005

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.