Altos binary format?

Brandon S. Allbery KB8JRR allbery at NCoast.ORG
Thu Feb 7 15:35:47 AEST 1991


As quoted from <1190 at bcs800.UUCP> by jeffs at bcs800.UUCP (Jeff Smith):
+---------------
| Oops!  The hardware is an Altos 486/20, and the o/s is Xenix version
| 3.1as0.  The reason for asking, is that I also have Xenix 2.2.1 (SCO)
| on a 286 (the altos is a 186) and wanted to compile on the 286 and
| run on the altos.  I have the option of generating straight 8086 code
| from the 286's compiler, and was told that the majority of the 486's
| o/s was only 8086 (not 186) code anyway.  Only thing is, when I get
| the executables on the altos and try to run, I get a message that says
+---------------

You must use the -compat option (not just the 8086 code generation option)
to cross-compile from SCO Xenix to Altos Xenix.  With -compat, it works fine.

+---------------
| but it's an 8086 executable from xenix 2.2.1 that should be (according
| to SCO) in x.out format.  I just didn't know if Altos supported the
| format, or had their own.
+---------------

x.out includes an indicator of what OS support the binary needs to be
runnable.  If the kernel can't comply (wrong processor, missing system calls,
etc.) it autokills the process --- as you saw.

SCO added some system calls that Altos didn't, and vice versa.  As a result,
the x.out files for each have different "Xenix version" flags.  That's why you
need "-compat":  it sets the version flag to a value which indicates a need
only for kernel services common to both versions.

++Brandon
-- 
Me: Brandon S. Allbery			    VHF/UHF: KB8JRR on 220, 2m, 440
Internet: allbery at NCoast.ORG		    Packet: KB8JRR @ WA8BXN
America OnLine: KB8JRR			    AMPR: KB8JRR.AmPR.ORG [44.70.4.88]
uunet!usenet.ins.cwru.edu!ncoast!allbery    Delphi: ALLBERY



More information about the Comp.unix.misc mailing list