home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 7 / FreshFishVol7.bin / bbs / gnu / gcc-2.3.3-src.lha / GNU / src / amiga / gcc-2.3.3 / INSTALL < prev    next >
Text File  |  1994-02-06  |  52KB  |  1,154 lines

  1. This file documents the installation of the GNU compiler. Copyright (C)
  2. 1988, 1989, 1992 Free Software Foundation, Inc. You may copy,
  3. distribute, and modify it freely as long as you preserve this copyright
  4. notice and permission notice.
  5.  
  6.  
  7. Installing GNU CC
  8. ******************
  9.  
  10.    Here is the procedure for installing GNU CC on a Unix system.
  11.  
  12.   1. If you have built GNU CC previously in the same directory for a
  13.      different target machine, do `make distclean' to delete all files
  14.      that might be invalid.  One of the files this deletes is
  15.      `Makefile'; if `make distclean' complains that `Makefile' does not
  16.      exist, it probably means that the directory is already suitably
  17.      clean.
  18.  
  19.   2. On a System V release 4 system, make sure `/usr/bin' precedes
  20.      `/usr/ucb' in `PATH'.  The `cc' command in `/usr/ucb' uses
  21.      libraries which have bugs.
  22.  
  23.   3. Specify the host and target machine configurations.  You do this by
  24.      running the file `configure' with appropriate arguments.
  25.  
  26.      If you are building a compiler to produce code for the machine it
  27.      runs on, specify just one machine type.  Use the `--target'
  28.      option; the host type will default to be the same as the target. 
  29.      (For information on building a cross-compiler, see *Note
  30.      Cross-Compiler::.)  The command looks like this:
  31.  
  32.           configure --target=sparc-sun-sunos4.1
  33.  
  34.      A configuration name may be canonical or it may be more or less
  35.      abbreviated.
  36.  
  37.      A canonical configuration name has three parts, separated by
  38.      dashes. It looks like this: `CPU-COMPANY-SYSTEM'. (The three parts
  39.      may themselves contain dashes; `configure' can figure out which
  40.      dashes serve which purpose.)  For example, `m68k-sun-sunos4.1'
  41.      specifies a Sun 3.
  42.  
  43.      You can also replace parts of the configuration by nicknames or
  44.      aliases. For example, `sun3' stands for `m68k-sun', so
  45.      `sun3-sunos4.1' is another way to specify a Sun 3.  You can also
  46.      use simply `sun3-sunos', since the version of SunOS is assumed by
  47.      default to be version 4.  `sun3-bsd' also works, since `configure'
  48.      knows that the only BSD variant on a Sun 3 is SunOS.
  49.  
  50.      You can specify a version number after any of the system types,
  51.      and some of the CPU types.  In most cases, the version is
  52.      irrelevant, and will be ignored.  So you might as well specify the
  53.      version if you know it.
  54.  
  55.      Here are the possible CPU types:
  56.  
  57.           a29k, alpha, arm, cN, elxsi, hppa1.0, hppa1.1, i386, i860,
  58.           i960, m68000, m68k, m88k, mips, ns32k, pyramid, romp, rs6000,
  59.           sparc, vax, we32k.
  60.  
  61.      Here are the recognized company names.  As you can see, customary
  62.      abbreviations are used rather than the longer official names.
  63.  
  64.           alliant, altos, apollo, att, cbm, convergent, convex, crds,
  65.           dec, dg, encore, harris, hp, ibm, mips, motorola, ncr, next,
  66.           ns, omron, sequent, sgi, sony, sun, tti, unicom.
  67.  
  68.      The company name is meaningful only to disambiguate when the rest
  69.      of the information supplied is insufficient.  You can omit it,
  70.      writing just `CPU-SYSTEM', if it is not needed.  For example,
  71.      `vax-ultrix4.2' is equivalent to `vax-dec-ultrix4.2'.
  72.  
  73.      Here is a list of system types:
  74.  
  75.           aix, aos, bsd, ctix, dgux, dynix, genix, hpux, isc, linux,
  76.           luna, mach, minix, newsos, osf, osfrose, riscos, sco, sunos,
  77.           sysv, ultrix, unos, vms.
  78.  
  79.      You can omit the system type; then `configure' guesses the
  80.      operating system from the CPU and company.
  81.  
  82.      You can add a version number to the system type; this may or may
  83.      not make a difference.  For example, you can write `bsd4.3' or
  84.      `bsd4.4' to distinguish versions of BSD.  In practice, the version
  85.      number is most needed for `sysv3' and `sysv4', which are often
  86.      treated differently.
  87.  
  88.      If you specify an impossible combination such as `i860-dg-vms',
  89.      then you may get an error message from `configure', or it may
  90.      ignore part of the information and do the best it can with the
  91.      rest. `configure' always prints the canonical name for the
  92.      alternative that it used.
  93.  
  94.      Often a particular model of machine has a name.  Many machine
  95.      names are recognized as aliases for CPU/company combinations. 
  96.      Thus, the machine name `sun3', mentioned above, is an alias for
  97.      `m68k-sun'. Sometimes we accept a company name as a machine name,
  98.      when the name is popularly used for a particular machine.  Here is
  99.      a table of the known machine names:
  100.  
  101.           3300, 3b1, 3bN, 7300, altos3068, altos, apollo68, att-7300,
  102.           balance, convex-cN, crds, decstation-3100, decstation, delta,
  103.           encore, fx2800, gmicro, hp7NN, hp8NN, hp9k2NN, hp9k3NN,
  104.           hp9k7NN, hp9k8NN, iris4d, iris, isi68, m3230, magnum, merlin,
  105.           miniframe, mmax, news-3600, news800, news, next, pbd, pc532,
  106.           pmax, ps2, risc-news, rtpc, sun2, sun386i, sun386, sun3,
  107.           sun4, symmetry, tower-32, tower.
  108.  
  109.      Remember that a machine name specifies both the cpu type and the
  110.      company name.
  111.  
  112.      There are four additional options you can specify independently to
  113.      describe variant hardware and software configurations.  These are
  114.      `--with-gnu-as', `--with-gnu-ld', `--with-stabs' and `--nfp'.
  115.  
  116.     `--with-gnu-as'
  117.           On certain systems, you must specify whether you want GNU CC
  118.           to work with the usual compilation tools or with the GNU
  119.           compilation tools (including GAS).  Use the `--with-gnu-as'
  120.           argument when you run `configure', if you want to use the GNU
  121.           tools.  (Specify `--with-gnu-ld' as well, since on these
  122.           systems GAS works only with the GNU linker.)  The systems
  123.           where this makes a difference are `i386-ANYTHING-sysv',
  124.           `i860-ANYTHING-bsd', `m68k-hp-hpux', `m68k-sony-bsd',
  125.           `m68k-altos-sysv', `m68000-hp-hpux', and `m68000-att-sysv'. 
  126.           On any other system, `--with-gnu-as' has no effect.
  127.  
  128.     `--with-gnu-ld'
  129.           Specify the option `--with-gnu-ld' if you plan to use the GNU
  130.           linker.  This inhibits the installation of `collect2', a
  131.           program which otherwise serves as a front-end for the
  132.           system's linker on most configurations.
  133.  
  134.     `--with-stabs'
  135.           On MIPS based systems, you must specify whether you want GNU
  136.           CC to create the normal ECOFF debugging format, or to use
  137.           BSD-style stabs passed through the ECOFF symbol table.  The
  138.           normal ECOFF debug format cannot fully handle languages other
  139.           than C.  BSD stabs format can handle other languages, but it
  140.           only works with the GNU debugger GDB.
  141.  
  142.           Normally, GNU CC uses the ECOFF debugging format by default;
  143.           if you prefer BSD stabs, specify `--with-stabs' when you
  144.           configure GNU CC.
  145.  
  146.           No matter which default you choose when you configure GNU CC,
  147.           the user can use the `-gcoff' and `-gstabs+' options to
  148.           specify explicitly the debug format for a particular
  149.           compilation.
  150.  
  151.     `--nfp'
  152.           On certain systems, you must specify whether the machine has
  153.           a floating point unit.  These systems are `m68k-sun-sunosN'
  154.           and `m68k-isi-bsd'.  On any other system, `--nfp' currently
  155.           has no effect, though perhaps there are other systems where
  156.           it could usefully make a difference.
  157.  
  158.      If you want to install your own homemade configuration files, you
  159.      can use `local' as the company name to access them.  If you use
  160.      configuration `CPU-local', the entire configuration name is used
  161.      to form the configuration file names.
  162.  
  163.      Thus, if you specify `m68k-local', then the files used are
  164.      `m68k-local.md', `m68k-local.h', `m68k-local.c',
  165.      `xm-m68k-local.h', `t-m68k-local', and `x-m68k-local'.
  166.  
  167.      Here is a list of configurations that have special treatment or
  168.      special things you must know:
  169.  
  170.     `alpha-*-osf1'
  171.           Systems using processors that implement the DEC Alpha
  172.           architecture and are running the OSF/1 operating system. (VMS
  173.           on the Alpha is not currently supported by GNU CC.)  As of
  174.