tony@joshua.math.ucla.edu (04/17/89)
I hope someone out there can answer this question: Is it true that all bianries created under various different 80386 based UNIX/XENIX operating systems are fully portable; i.e will the program executables compiled on a Unisys 386 machine running Unix Sys V work (without modifications) under SCO Xenix 2.3.1 (on a 386 clone)? How about C libraries and object files, are they portable also? Thanks in advance for all replies. Tony Lei INTERNET: tony@math.ucla.edu UUCP: ..!ucbvax!ucla-cs!math.ucla.edu!tony
daveh@marob.MASA.COM (Dave Hammond) (04/17/89)
In article <817@sunset.MATH.UCLA.EDU> tony@MATH.UCLA.EDU () writes: >Is it true that all bianries created under various different 80386 based >UNIX/XENIX operating systems are fully portable; i.e will the program >executables compiled on a Unisys 386 machine running Unix Sys V work >(without modifications) under SCO Xenix 2.3.1 (on a 386 clone)? Xenix 386 will run/link executable/object files in its native format or in AT&T's COFF (Common Object File Format) format. Most SysV R3.2 386 ports will run/link both COFF and Xenix binaries. Does anyone know if there is any AT&T-mandated policy that all Sys VR3.2 386 ports run COFF binaries, Xenix binaries, or both? -- Dave Hammond daveh@marob.masa.com
jim@applix.UUCP (Jim Morton) (04/25/89)
In article <616@marob.MASA.COM>, daveh@marob.MASA.COM (Dave Hammond) writes: > Does anyone know if there is any AT&T-mandated policy that all Sys VR3.2 > 386 ports run COFF binaries, Xenix binaries, or both? BOTH! I can't quote AT&T licensing, but since COFF is their native format and Xenix binary support, VP/ix and DOSMerge support were basically the whole idea behind V.3.2, anything that says it is Unix System V/386 3.2 will have that support. The key is realizing things that aren't V.3.2 based (like AIX PS/2...) -- Jim Morton, APPLiX Inc., Westboro, MA UUCP: ...harvard!m2c!applix!jim jim@applix.m2c.org
rosso@sco.COM (Ross Oliver) (04/26/89)
In article <817@sunset.MATH.UCLA.EDU> tony@MATH.UCLA.EDU () writes: >I hope someone out there can answer this question: > >Is it true that all bianries created under various different 80386 based >UNIX/XENIX operating systems are fully portable; i.e will the program >executables compiled on a Unisys 386 machine running Unix Sys V work >(without modifications) under SCO Xenix 2.3.1 (on a 386 clone)? > >How about C libraries and object files, are they portable also? Here's the scoop. I'll start with some definitions: x.out: the format that XENIX (SCO, Microsoft, Altos, et. al.) uses for binary executable files. OMF: stands for Object Module Format. This format was defined by Intel, and is used for object modules (i.e. .o files) under both MS-DOS and XENIX (although MS-DOS uses the .OBJ extension). COFF: stands for Common Object File Format. This is the format was defined by AT&T, and is used to refer to BOTH object files and executable binaries for 80386-based UNIX. Now for the compatibility questions: SCO XENIX Operating System release 2.2.x and earlier can execute only x.out executables. SCO XENIX Operating System release 2.3 and later can execute both x.out and COFF executables. SCO XENIX Development System 2.2.x and earlier can generate and use OMF files, and generate x.out executables. SCO XENIX Development System 2.3 can use existing OMF and COFF object modules, but can generate only OMF modules and x.out executables. AT&T incorporated the ability to execute x.out binaries into UNIX for the 80386, so UNIX 3.2 from any vendor (including the upcoming SCO UNIX System V product) will execute both x.out and COFF executables. SCO UNIX System V/386 Release 3.2 Development System will be able to generate and use OMF and COFF object modules, and generate both x.out and COFF executables. One final note: the XENIX floating point emulator does not emulate a few of the 80287 and 80387 instructions. The 80387 transcendental functions, for example, are not emulated. For x.out binaries, this is not a problem, since the XENIX C compiler generates only those instructions the emulator emulates. However, COFF binaries may contain coprocessor instructions that the XENIX floating point emulator can't do. To successfully run these binaries, a real coprocessor must be present. Otherwise, the programs will die with and "illegal instruction" error. This will not be a problem in SCO UNIX System V because it includes both the XENIX and UNIX floating point emulators. Ross Oliver Techical Support The Santa Cruz Operation, Inc.