public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* b19 vs. b20 .a files incompatible
@ 1999-07-13  5:17 Christoph Kukulies
  1999-07-13 11:23 ` Christoph Kukulies
  1999-07-31 18:34 ` Christoph Kukulies
  0 siblings, 2 replies; 6+ messages in thread
From: Christoph Kukulies @ 1999-07-13  5:17 UTC (permalink / raw)
  To: cygwin

I was a bit suprised when I compiled a library (libf2c.a)
under B19 (ld -r -x -o , btw, didn't work under that version),
took the library to a B20.1 (resp. latest) machine and 
linked a program for which the main program was compiled
under the latter.

The result was that the program got hung and didn't write out
anything. It was a hello world type program. I could interrupt
with ^C though.

Is it normal, that .o files or .a files are incompatible between releaes?


-- 
Chris Christoph P. U. Kukulies kuku@gil.physik.rwth-aachen.de

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: b19 vs. b20 .a files incompatible
  1999-07-13  5:17 b19 vs. b20 .a files incompatible Christoph Kukulies
@ 1999-07-13 11:23 ` Christoph Kukulies
  1999-07-13 13:23   ` Mumit Khan
  1999-07-31 18:34   ` Christoph Kukulies
  1999-07-31 18:34 ` Christoph Kukulies
  1 sibling, 2 replies; 6+ messages in thread
From: Christoph Kukulies @ 1999-07-13 11:23 UTC (permalink / raw)
  To: Christoph Kukulies; +Cc: cygwin

On Tue, Jul 13, 1999 at 02:17:25PM +0200, Christoph Kukulies wrote:
> 
> I was a bit suprised when I compiled a library (libf2c.a)
> under B19 (ld -r -x -o , btw, didn't work under that version),
> took the library to a B20.1 (resp. latest) machine and 
> linked a program for which the main program was compiled
> under the latter.
> 
> The result was that the program got hung and didn't write out
> anything. It was a hello world type program. I could interrupt
> with ^C though.
> 
> Is it normal, that .o files or .a files are incompatible between releaes?

Thinking of it I came to the conclusion that the problem might be in 
differing stdio.h structures (iob or what that is). f2c's runtime
library that I was compiling (libf2c) relies heavily on these 
stdio structures and they may have changed from b19 to b20.

Can anyone confirm this?


> 
> 
> -- 
> Chris Christoph P. U. Kukulies kuku@gil.physik.rwth-aachen.de
Chris Christoph P. U. Kukulies kuku@gil.physik.rwth-aachen.de

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: b19 vs. b20 .a files incompatible
  1999-07-13 11:23 ` Christoph Kukulies
@ 1999-07-13 13:23   ` Mumit Khan
  1999-07-31 18:34     ` Mumit Khan
  1999-07-31 18:34   ` Christoph Kukulies
  1 sibling, 1 reply; 6+ messages in thread
From: Mumit Khan @ 1999-07-13 13:23 UTC (permalink / raw)
  To: cygwin

Christoph Kukulies <kuku@gilberto.physik.RWTH-Aachen.DE> writes:
> On Tue, Jul 13, 1999 at 02:17:25PM +0200, Christoph Kukulies wrote:
> > 
> > I was a bit suprised when I compiled a library (libf2c.a)
> > under B19 (ld -r -x -o , btw, didn't work under that version),
> > took the library to a B20.1 (resp. latest) machine and 
> > linked a program for which the main program was compiled
> > under the latter.
> > 
> > The result was that the program got hung and didn't write out
> > anything. It was a hello world type program. I could interrupt
> > with ^C though.
> > 
> > Is it normal, that .o files or .a files are incompatible between releaes?
> 
> Thinking of it I came to the conclusion that the problem might be in 
> differing stdio.h structures (iob or what that is). f2c's runtime
> library that I was compiling (libf2c) relies heavily on these 
> stdio structures and they may have changed from b19 to b20.
> 
> Can anyone confirm this?

This issue has come up a few times; Cygwin team does strive for
binary compatibility, but it hasn't said much in terms of link
level compatibility. 

Here's my take on this -- Cygwin is *beta* software, and you have to
expect a level of incompatibility from release to release. It has
done very well in terms of *binary* compatibility, but compatibility 
at the *link-level*, ie., being able to link object files together 
from different releases, is sometimes simply not possible.

Just consider what happens when Cygwin release R+1 fixes a bug in 
some globally visible symbol in release R. You've just lost link 
level compatibility. Can it be prevented or worked around? Possibly. 
But IMO that's not worth the mess that's likely to show up in the 
long run. Let's fix it now while it's still called beta.

Regards,
Mumit


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* b19 vs. b20 .a files incompatible
  1999-07-13  5:17 b19 vs. b20 .a files incompatible Christoph Kukulies
  1999-07-13 11:23 ` Christoph Kukulies
@ 1999-07-31 18:34 ` Christoph Kukulies
  1 sibling, 0 replies; 6+ messages in thread
From: Christoph Kukulies @ 1999-07-31 18:34 UTC (permalink / raw)
  To: cygwin

I was a bit suprised when I compiled a library (libf2c.a)
under B19 (ld -r -x -o , btw, didn't work under that version),
took the library to a B20.1 (resp. latest) machine and 
linked a program for which the main program was compiled
under the latter.

The result was that the program got hung and didn't write out
anything. It was a hello world type program. I could interrupt
with ^C though.

Is it normal, that .o files or .a files are incompatible between releaes?


-- 
Chris Christoph P. U. Kukulies kuku@gil.physik.rwth-aachen.de

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: b19 vs. b20 .a files incompatible
  1999-07-13 11:23 ` Christoph Kukulies
  1999-07-13 13:23   ` Mumit Khan
@ 1999-07-31 18:34   ` Christoph Kukulies
  1 sibling, 0 replies; 6+ messages in thread
From: Christoph Kukulies @ 1999-07-31 18:34 UTC (permalink / raw)
  To: Christoph Kukulies; +Cc: cygwin

On Tue, Jul 13, 1999 at 02:17:25PM +0200, Christoph Kukulies wrote:
> 
> I was a bit suprised when I compiled a library (libf2c.a)
> under B19 (ld -r -x -o , btw, didn't work under that version),
> took the library to a B20.1 (resp. latest) machine and 
> linked a program for which the main program was compiled
> under the latter.
> 
> The result was that the program got hung and didn't write out
> anything. It was a hello world type program. I could interrupt
> with ^C though.
> 
> Is it normal, that .o files or .a files are incompatible between releaes?

Thinking of it I came to the conclusion that the problem might be in 
differing stdio.h structures (iob or what that is). f2c's runtime
library that I was compiling (libf2c) relies heavily on these 
stdio structures and they may have changed from b19 to b20.

Can anyone confirm this?


> 
> 
> -- 
> Chris Christoph P. U. Kukulies kuku@gil.physik.rwth-aachen.de
Chris Christoph P. U. Kukulies kuku@gil.physik.rwth-aachen.de

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: b19 vs. b20 .a files incompatible
  1999-07-13 13:23   ` Mumit Khan
@ 1999-07-31 18:34     ` Mumit Khan
  0 siblings, 0 replies; 6+ messages in thread
From: Mumit Khan @ 1999-07-31 18:34 UTC (permalink / raw)
  To: cygwin

Christoph Kukulies <kuku@gilberto.physik.RWTH-Aachen.DE> writes:
> On Tue, Jul 13, 1999 at 02:17:25PM +0200, Christoph Kukulies wrote:
> > 
> > I was a bit suprised when I compiled a library (libf2c.a)
> > under B19 (ld -r -x -o , btw, didn't work under that version),
> > took the library to a B20.1 (resp. latest) machine and 
> > linked a program for which the main program was compiled
> > under the latter.
> > 
> > The result was that the program got hung and didn't write out
> > anything. It was a hello world type program. I could interrupt
> > with ^C though.
> > 
> > Is it normal, that .o files or .a files are incompatible between releaes?
> 
> Thinking of it I came to the conclusion that the problem might be in 
> differing stdio.h structures (iob or what that is). f2c's runtime
> library that I was compiling (libf2c) relies heavily on these 
> stdio structures and they may have changed from b19 to b20.
> 
> Can anyone confirm this?

This issue has come up a few times; Cygwin team does strive for
binary compatibility, but it hasn't said much in terms of link
level compatibility. 

Here's my take on this -- Cygwin is *beta* software, and you have to
expect a level of incompatibility from release to release. It has
done very well in terms of *binary* compatibility, but compatibility 
at the *link-level*, ie., being able to link object files together 
from different releases, is sometimes simply not possible.

Just consider what happens when Cygwin release R+1 fixes a bug in 
some globally visible symbol in release R. You've just lost link 
level compatibility. Can it be prevented or worked around? Possibly. 
But IMO that's not worth the mess that's likely to show up in the 
long run. Let's fix it now while it's still called beta.

Regards,
Mumit


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~1999-07-31 18:34 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-07-13  5:17 b19 vs. b20 .a files incompatible Christoph Kukulies
1999-07-13 11:23 ` Christoph Kukulies
1999-07-13 13:23   ` Mumit Khan
1999-07-31 18:34     ` Mumit Khan
1999-07-31 18:34   ` Christoph Kukulies
1999-07-31 18:34 ` Christoph Kukulies

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).