James Carlson wrote: > Chris Quenelle writes: >> I ran into this problem in spades when Solaris 10 came out with libm.so.2 >> No program that uses libm can be linked on Solaris 10 and run on Solaris 9. > > That sounds odd to me ... why would you _expect_ to be able to link a > program on Solaris 10 and then run it on Solaris 9?
I would (if I didn't know better) expect it to work because my program uses only interfaces that are easily stable and available on both Solaris 9 and Solaris 10. It's intuitive that the program should link and run an either platform interchangeably. The fact that "no-brainer" compatibility fails on Solaris is a barrier to development, if the program needs to run on multiple versions of Solaris. The answer I've gotten from some people at Sun boils down to: We can't make it work for every case, so we make a rule that says we don't have to worry about it. That's fine if you're concerned about rules. Most developers are only concerned about whether their stuff works or not. --chris > > We support backward compatibility: old binaries that stick to the ABI > will run on new systems. It doesn't work in the other direction, > though, because we're unable to predict the future. New binaries > won't necessarily run on older systems, and they're not supported. I > think that ought to extend to the link editing phase as well, as new > features occasionally appear here. >
