On Wed, 21 Feb 2007 10:53:14 -0500 James Carlson wrote:
> Glenn Fowler writes:
> > On Wed, 21 Feb 2007 10:05:10 -0500 James Carlson wrote:
> > > Binary incompatibility for _what_?
> > 
> > at time (t) I post solaris sparc binaries for say, ksh
> > at time (t+1) the solaris implementation relase changes
> > and posted binaries no longer work for the new release
> > worse, binaries built to (t+1) dont work for (t)
> > so the binaries I post split to pre-(t) and post-(t)

> I'm still confused about the incompatibility that's of concern here.

like I said, its based on empirical evidence
I don't know if the solaris systems in question are maintained properly
I don't know the details of the solaris contracts
I do know how cc works and how to copy a.out's from one system to another
I do have "customers" with solaris systems that want ksh a.out's

ksh93s built on
SunOS hostname 5.8 Generic_108528-26 sun4u sparc SUNW,Sun-Fire-15000
and run on
SunOS hostname 5.6 Generic_105181-33 sun4u sparc SUNW,Ultra-2
produces
ld.so.1: ./ksh-sol8.sun4: fatal: libc.so.1: version `SUNW_1.18' not found 
(required by file ./ksh-sol8.sun4)
ld.so.1: ./ksh-sol8.sun4: fatal: relocation error: file ./ksh-sol8.sun4: symbol 
tzname: referenced symbol not found

ksh93s built on
SunOS hostname 5.9 Generic_118558-21 sun4u sparc SUNW,Sun-Fire-280R
and run on
SunOS hostname 5.6 Generic_105181-33 sun4u sparc SUNW,Ultra-2
produces
ld.so.1: ./ksh-sol9.sun4: fatal: libc.so.1: version `SUNW_1.18' not found 
(required by file ./ksh-sol9.sun4)
ld.so.1: ./ksh-sol9.sun4: fatal: relocation error: file ./ksh-sol9.sun4: symbol 
strcoll: referenced symbol not found

now there may be some narrow path of cc/ccs flags/executables && uname -r 
matching
that I could set up to make compatible binaries for all solaris
but even then am I crippling later releases for the sake of compatibility with 
earlier ones?
and I also have N-1 other target architectures with possibly
worse version management problems,
and finally, building a.out's is (ideally) 1% of my job

therefore, HOSTTYPE=(os)[(differentiating-number)].(architecture)[(-bits)],
sol8.i386, sol11.i386-64 etc.

-- Glenn Fowler -- AT&T Research, Florham Park NJ --


Reply via email to