[comp.unix.internals] C compatability between SCO UNIX and Altos 2000 XENIX

bill@twg.wimsey.bc.ca (Bill Irwin) (10/03/90)

I  have  received  a  request from one of our account  managers  about  a
problem  that  one of his clients is having porting C code compiled on  a
386  running  SCO UNIX to an Altos 2000 XENIX runtime  environment.   The
scenario follows:

----------------------------START OF FORWARDED MESSAGE-------------------

Tim wishes to develop C code on the TWG 386 system running SCO UNIX and run
those binaries on the Altos 2000 Altos XENIX system. It is not working, and
it should not, because SCO UNIX C code binaries are not compatible with Altos
XENIX. I know this.

I need to know the following:

1.      Is  there a way to compile C code using the SCO UNIX Medium Model
        Compiler and Compatibility mode which will allow it to run on the
        Altos?  As stated above, I think not.

2.      Does  the  Altos  C compiler for Altos XENIX 3.2c have  a  Medium
        Model capability?

3.      If number 1 above can not work, how can the customer purchase a C
        compiler  for Altos XENIX?  Buy development?  Further, the recent
        Altos  XENIX upgrade that the client just got from us  apparently
        claims  it  now includes most of the development system as  well.
        Perhaps  we can glean from Altos whether or not that includes the
        C compiler.
---------------------------END OF FORWARDED MESSAGE----------------------

Anyone  care  to  take  a crack at any or all of these  questions?   I've
always  believed  that 386 *NIX were binary compatible.  Am I wrong?   If
not, what is the trick when compiling on UNIX?
-- 
Bill Irwin    -       The Westrheim Group     -    Vancouver, BC, Canada
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
uunet!van-bc!twg!bill     (604) 431-9600 (voice) |     UNIX Systems
bill@twg.bc.ca            (604) 431-4329 (fax)   |     Integration

cpcahil@virtech.uucp (Conor P. Cahill) (10/03/90)

In article <264@twg.wimsey.bc.ca> bill@twg.wimsey.bc.ca (Bill Irwin) writes:
>
>Tim wishes to develop C code on the TWG 386 system running SCO UNIX and run
>those binaries on the Altos 2000 Altos XENIX system. It is not working, and
>it should not, because SCO UNIX C code binaries are not compatible with Altos
>XENIX. I know this.

One possible solution to this problem would be to copy the Altos compiler and
it's associated libraries to the SCO Unix system and use them to compile the
code.  SCO unix should be able to run the compiler with no problems and
since the binaries are generated with an Altos compiler they should run on
the Altos with no problems.

Remember, if you are going to do this you need to copy all the include 
files, /lib and /usr/lib libraries, the compiler, and the linker.  There
may be a few additions modules that you need (that I don't recall off 
the top of my head).

To make sure that you don't clobber your SCO-Unix compiler stuff I would
recommend that you set up this stuff in a chrooted environment.  

I did this one time to run the Xenix compiler under Interactive.


-- 
Conor P. Cahill            (703)430-9247        Virtual Technologies, Inc.,
uunet!virtech!cpcahil                           46030 Manekin Plaza, Suite 160
                                                Sterling, VA 22170 

ti@altos86.Altos.COM (Ti Kan) (10/04/90)

In article <264@twg.wimsey.bc.ca> bill@twg.wimsey.bc.ca (Bill Irwin) writes:
>I  have  received  a  request from one of our account  managers  about  a
>problem  that  one of his clients is having porting C code compiled on  a
>386  running  SCO UNIX to an Altos 2000 XENIX runtime  environment.

I am assuming that you are running the older Altos XENIX version 5.2C for
the Altos 2000 (Later OS versions (5.3x) for the 2000 are all
UNIX-derivative, not XENIX).

>2.      Does  the  Altos  C compiler for Altos XENIX 3.2c have  a  Medium
>        Model capability?

Yes, the Altos XENIX C compiler supports medium model.

>3.      If number 1 above can not work, how can the customer purchase a C
>        compiler  for Altos XENIX?  Buy development?

To get the compiler and all other development tools, you'll need the
Altos XENIX Development System package.

>Anyone  care  to  take  a crack at any or all of these  questions?   I've
>always  believed  that 386 *NIX were binary compatible.  Am I wrong?   If
>not, what is the trick when compiling on UNIX?

Well, you are only half wrong.  It is true that most 386 *UNIX*es are
binary compatible (supports both XENIX x.out and UNIX coff format
binaries), but an older XENIX system is not going to support the
newer UNIX binaries!  For example, The UNIX-derived Altos OSs
for the Altos 500, 1000, 2000, 4000, and 5000 support both coff and
x.out binaries, but the older Altos XENIX releases won't support
coff.  On a 386 UNIX system, most compilers and linkers have options
to allow you to generate x.out binaries (by default, they generate
coff).  Try "man cc" and "man ld".

Hope this helps.

-Ti
-- 
Ti Kan | vorsprung durch technik!                                       \\\
Internet: ti@altos.com                                                   \\\
UUCP: ...!{sun|sco|pyramid|amdahl|uunet}!altos!ti                     /// \\\
The opinions herein are not necessarily those of Altos.              ////////\