home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / mach / doc / notes / ultrix.support / BUILD.NOTES1.Z / BUILD.NOTES1
Encoding:
Internet Message Format  |  1992-08-19  |  4.2 KB

  1. From: uhlig@mummy.eecs.umich.edu (richard uhlig)
  2. Subject: As promised: Notes for building Mach 3.0 under Ultrix 4.2
  3. Date: Wed, 19 Aug 92 11:28:25 -0400
  4. ----------------------------------------------------------
  5.  
  6. Mary, a while back I promised you some notes regarding what I had to do
  7. to get Mach 3.0 and the Unix server to compile under Ultrix 4.2 for a
  8. DECstation 3100.
  9.  
  10. We've been sucessfully running a Mach 3.0 system for a couple of months
  11. now.  I recently decided to sup a fresh set of mk and ux sources from
  12. CMU and tried build everything from scratch so that I could come up with
  13. clean notes that describe the minimum steps required.
  14.  
  15. The second time around was much easier than the first.  I've concluded
  16. that there really aren't very many problems with building mk and ux
  17. under Ultrix 4.2 and that this is very much preferable to using OSF/1.
  18.  
  19.  
  20.  
  21. -------------- notes for building mk and ux collections ---------------
  22. -------------- under ultrix 4.2 for the DECstation 3100 ---------------
  23.  
  24. In these notes, /usr/users/uhlig is the personal directory under which I
  25. performed the build.  I just put all of the sources under my own
  26. personal directory, so /usr/users/uhlig/mach3/ is the "system source"
  27. directory and /usr/users/uhlig/mach3_shadow/ is the "local source"
  28. directory that I use for shadowing.
  29.  
  30.     1. I added the following to the beginning of my PATH:
  31.         ~/mach3/release/pmax_mach/bin
  32.  
  33.     2. I set the following environment variables:
  34.         setenv    MKCONFIG    STD+WS-mips_code
  35.         setenv    UXCONFIG    STDVICE+WS
  36.  
  37.        The -mips_code option is important for those that don't
  38.        have the softfp.s file.
  39.  
  40.  
  41.        The other files that are missing from the mips.free collection
  42.        (for those who don't have Ultrix source licenses)  are:
  43.  
  44.         src/mk/kernel/chips/dec_lic/ga_hdw.c
  45.         src/mk/kernel/chips/dec_lic/ga_misc.c
  46.         src/mk/kernel/chips/dec_lic/gq_hdw.c
  47.         src/mk/kernel/chips/dec_lic/gq_misc.c
  48.         src/mk/kernel/chips/dec_lic/gx_misc.c
  49.  
  50.       These files are the driver for the 3max 2D graphics display. 
  51.       They are not needed unless you have such a display. 
  52.       They are selected on the gx option which is defined in 
  53.       conf/MASTER.mips. The simpliest way to eliminate the use of 
  54.       these files is to delete the following line from MASTER.mips
  55.  
  56.       pseudo-device   gx        2       # <kmax,kmin,maxine>
  57.  
  58.     3. I created a Makeconf-site file in ~/mach3_shadow/src/mk that
  59.        contains:
  60.  
  61.         CPATH = /usr/include
  62.         LPATH = /usr/lib
  63.         SOURCEDIR = /usr/users/uhlig/mach3/src/mk
  64.         OBJECTDIR = /usr/users/uhlig/mach3/obj/pmax_mach/mk
  65.         INSTALLDIR = /usr/users/uhlig/mach3/release/pmax_mach
  66.  
  67.        I wanted to build objects in my shadow directory, but I couldn't
  68.        get that to work, so I set OBJECTDIR and INSTALLDIR to use the
  69.        ~/mach3 tree.  I created a similar Makeconf-site file for ux and
  70.        placed it in ~/mach3_shadow/src/ux/ for the Unix server build.
  71.  
  72.     4. I copied the following parts of the MIPS C compiler from their
  73.        usual homes under Ultrix 4.2 from:
  74.  
  75.         /usr/lib/cmplrs/cc2.1/ccom
  76.         /usr/lib/cmplrs/cc2.1/uopt
  77.         /usr/lib/cmplrs/cc2.1/ugen
  78.         /usr/lib/cmplrs/cc2.1/as1
  79.        to:
  80.         /usr/users/uhlig/mach3/release/pmax_mach/lib/
  81.  
  82.     5. I #ifdef-ed out the following include in
  83.        ~/mach3/release/pmax_mach/include/sys/time.h (line 105):
  84.  
  85.         #include <time.h>
  86.  
  87.        This seems to be conflicting with the Ultrix time.h at certain
  88.        points during the build.
  89.  
  90. And that's it!
  91.  
  92.     6. The following commands ought to run without errors at this point:
  93.  
  94.         cd ~/mach3_shadow/src/mk
  95.         make
  96.         cd ~/mach3_shadow/src/ux
  97.         make
  98.  
  99. As far as running the system goes, I've had good luck using Ultrix
  100. binaries as is, with some exceptions (see below).  When setting up the
  101. paging file, I ran into a small problem with the dd command.  I had to
  102. use:
  103.  
  104.     dd if=/dev/rrz4b of=/tmnt/rz4b/PAGING_FILE bs=1024 count=20480
  105.  
  106. To create a 20 Meg paging file.  This is different from the command
  107. given in the Mach 3.0 installation notes which uses bs=1024k and
  108. count=20.  I'm using the Ultrix dd which seems to have a funny
  109. limitation on the bs size (I think it's 65536).
  110.  
  111. ---------------------------------------------------------------
  112.  
  113. The Ultrix versions of fsck, mount, umount and df fail because they
  114. use system calls that are not supported by Mach.
  115. Mach binaries of these files can be supped from this area.
  116.