Mailing-List: contact cygwin-apps-help AT cygwin DOT com; run by ezmlm Sender: cygwin-apps-owner AT cygwin DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Mail-Followup-To: cygwin-apps AT cygwin DOT com Delivered-To: mailing list cygwin-apps AT cygwin DOT com content-class: urn:content-classes:message Subject: RE: ordinal linking for cygwin ld MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sat, 27 Apr 2002 08:57:05 +1000 X-MimeOLE: Produced By Microsoft Exchange V6.0.5762.3 Message-ID: X-MS-Has-Attach: X-MS-TNEF-Correlator: From: "Robert Collins" To: "Charles Wilson" , "Ralf Habacker" Cc: "Kde-Cygwin" , "Binutils" , "Cygwin-Apps" Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id g3QMv9e00980 > -----Original Message----- > From: Charles Wilson [mailto:cwilson AT ece DOT gatech DOT edu] > Sent: Saturday, April 27, 2002 8:55 AM > To: Ralf Habacker > Cc: Kde-Cygwin; Binutils; Cygwin-Apps > Subject: Re: ordinal linking for cygwin ld > > > Ralf Habacker wrote: > > >> > >>Since your app linked by ordinal, it will break if you try > to run it > >>with the new DLL, without re-linking. > >> > > > > accepted > > > > > >>So how does the vendor ensure that he doesn't unnecessarily break > >>backwards compatibility, and keep the ordinals the same? > By using a > >>def file. > >> > > > > Or be relinking all the libs. > > > If *you* release new "compatible" libs with the ordinals > different from > the current libs, *my* application breaks. Or, you might get ripple > effects: what if I distribute a dll that depends on KDE's > libs, and Bob > has an app that depends on my dll? Bob's app breaks because > my dll is > broken because you released new "compatible" libs. Not good > -- and it'd > take a while to track the problem down too: (a) I need to > relink my dll, > and give it to Bob, and then (and only then) (b) Bob can > relink his app. > > Blech. The PE spec (as I read it) indicates that as long as a name is included (ie it's not link-only-by-ordinal) then ordinals can change and nothing will break. It's only when the only link information is the ordinal that problems will appear. Rob