Go to the previous, next section.

# Installation

What you do to install Geomview depends on which kind of computer you have (SGI or NeXT) and on whether you have the source distribution or the binary distribution.

In general, if you don't care about looking at Geomview's source code, you should get the binary distribution. Its installation is much easier and quicker than that for the source code.

## Installing the SGI Binary Distribution

If you have just obtained a copy of the SGI binary distribution (file ``geomview-sgi.tar.Z'`), you should be able to run Geomview and make use of most of its features immediately after unpacking it by `cd`'ing to the directory that it is in and typing `geomview`.

In order to fully install Geomview so that you can run it from any directory and use all of its features, follow the steps in this section. In particular, you must go through this installation procedure in order to use Geomview to display Mathematica graphics.

Geomview is distributed in a directory that contains various files and subdirectories that Geomview needs at run-time, such as data files and external modules. It also contains other things distributed with Geomview, such as documentation and (in the soure-code distribution) source-code. We refer to the root directory of this tree as the ``@$GEOMROOT'` directory. This is the directory called ``Geomview'` that is created when you unpack the distribution file.

To install Geomview on your system, arrange for the ``@$GEOMROOT'` directory to be in a permanent place. Then, in a shell window, `cd` to that directory and type `install`. This runs a shell script which does the installation after asking you several questions about where you want to install the various components of Geomview.

After running the `install` script you should now be able to run Geomview from any directory on your system. (You may need to give the `rehash` command in any shells on your computer that were started up before you did the installation.)

The ``install'` script puts copies of the files in ``@$GEOMROOT/bin/sgi'` and ``@$GEOMROOT/man'` into the directories you specified for executables and man pages, respectively. Once you have done the installation you can cut down one the disk space required by Geomview by removing some files from these directories, since copies have been installed elsewhere. You should first test that your installed Geomview works properly because once you remove these files from their distribution directories you will not be able to do the installation again.

In particular, the files you can remove are

``@$GEOMROOT/bin/sgi'`:
  Remove all files from here except ``gvx'`, which is the geomview executable file. DO NOT REMOVE ``gvx'`. It is not installed elsewhere.

``@$GEOMROOT/man'`:
  You can remove all the files in this directory.

### Details of the SGI Binary Installation

The `install` script should be self-explanatory; just run it and answer the questions. This section gives some details for system administrators and other users who may want to know more about the installation.

The installation is actually done by `make`; the `install` script queries the user for the settings of the following `make` variables and then invokes `make install`.

`GEOMROOT`:
  the absolute pathname of the Geomview root directory. The `geomview` shell script, which is what users invoke to run Geomview, uses this to set various environment variables that Geomview needs. It is very important that this be an absolute pathname --- i.e. it should start with a '/'.

`BINDIR`:
  a directory where executable files are installed. The `geomview` shell script goes here, as well as various other auxiliary programs that can be used in conjunction with `geomview`. This should be a directory that is on users' ``@$path'`. These auxiliary programs are distributed in the ``@$GEOMROOT/bin/sgi'` directory; if you specify this directory for `BINDIR`, they are left in that directory.

`MANDIR`:
  a directory where Unix manual pages are installed. These are distributed in the ``@$GEOMROOT/man'` subdirectory; if you specify this directory for `MANDIR`, they are left in that directory.

`MMAPACKAGEDIR`:
  a directory where Mathematica packages are installed. This should be a directory that Mathematica searches for packages that it loads; you can see what directories your Mathematica searches by looking at the value of the `@$Path` variable in a Mathematica session. The installation process will install some packages there which allow you to use Geomview to display Mathematica graphics. These packages are distributed in the ``@$GEOMROOT/mathematica'` subdirectory; if you specify this directory for `MMAPACKAGEDIR`, or if you specify the empty string for `MMAPACKAGEDIR`, the packages are left in that directory. For more details about the way these Mathematica packages connect to Geomview, see section Installing the Mathematica Packages.

## Installing the NeXT Binary Distribution

1. If you have just obtained a copy of the NeXTStep binary distribution (file ``geomview-next.tar'`), you can unpack it by double-clicking on it in the Workspace. This will open up a File Viewer panel showing, among other things, a NeXT Installer package called ``Geomview.pkg'`.

2. The first thing you should do is double-click on ``Geomview.pkg'` to invoke the NeXT Installer. You will be asked where you want to install it; typically it should go in ``/LocalApps'` or in ``~/Apps'` in your home directory. You should now be able to run Geomview and make use of most of its features by double-clicking on the installed ``Geomview.app'` icon.

3. There are some aspects of the installation, however, that the NeXT Installer can't handle. In order to fully install Geomview so that you can use all of its features, you should run the ``install'` script in the ``Geomview.app'` directory. In particular, you must go through this installation procedure in order to use Geomview to display Mathematica graphics.

   To run the ``install'` script you can open ``Geomview.app'` in the Workspace by selecting it and picking `File->Open as Folder` from the Workspace menu. This will pop up a File Viewer panel showing the contents of ``Geomview.app'`. Scroll down to the file named ``install'`, and double-click on it. This will open a terminal window and run the script in that window. Alternately, you can open a terminal window yourself, cd to ``Geomview.app'`, and run ``install'` there.

   The ``install'` script does the installation after asking you several questions about where you want to install the various components of Geomview. After running the `install` script, Geomview is completely installed. If in the future you move ``Geomview.app'` to some other location you should run ``install'` again.

4. This step is optional. Geomview's example data files are in the ``Geomview.app/data'` directory. If you are on a network with both SGI workstations and NeXTStep workstations, and you want to install Geomview to run on both, you can save disk space by having the two installations share a common data directory. To do this, decide on a location for the data directory and copy it there if it isn't there already (a good choice would be to leave it in the ``@$GEOMROOT'` directory in your SGI Geomview installation). Then edit the file ``Geomview.app/CONFIG.gv'` to change the setting of the variable `GEOMVIEW_DATA` to point to this directory (there are comments in the file telling you what to do). You can then remove the data directory from ``Geomview.app'`.

To run geomview, double-click on ``Geomview.app'` from the workspace, or type `open Geomview.app` from the appropriate directory, or type `geomview` from a shell window.

More Geomview documentation is in the ``Geomview.app/doc'` subdirectory. In particular, a copy of the manual is there.

The ``install'` script puts copies of the files in ``Geomview.app/bin/next'` and ``Geomview.app/man'` into the directories you specified for executables and man pages, respectively. Once you have done the installation you can cut down one the disk space required by Geomview by removing all the files in these directories, since copies have been installed elsewhere. You should first test that your installed Geomview works properly because once you remove these files from their distribution directories you will not be able to do the installation again.

### Details of the NeXTStep Binary Installation

Other than the installation of the ``Geomview.app'` directory, the installation details of the NeXTStep binary distribution are the same as for the SGI distribution, see section Details of the SGI Binary Installation. Note that the directory referred to in the SGI distribution as ``@$GEOMROOT'` is the ``Geomview.app'` directory in the NeXTStep distribution.

## Compiling and Installing the Source Code Distribution

The main reason to get the source code distribution is to look at and/or work with the source code. If you are only concered with using Geomview it is better to get the binary distribution. It takes anywhere from 15 minutes to 1.5 hours to compile the entire source distribution, depending on what kind of computer you have.

Let ``@$GEOMROOT'` denote the full pathname of the Geomview source code directory; this is the directory called ``Geomview'` that is created when you unpack the distribution. This directory contains the Geomview source code as well as various other files and subdirectories that Geomview needs when it runs.

Before doing any compilation you should edit the file ``@$GEOMROOT/makefiles/mk.site.default'`. This file defines some `make` variables which specify your local configuration. This includes the pathnames of the directories into which Geomview will be installed, and possibly some other settings as well. There are comments in the file telling you what to do. This file is included by every Makefile in the source tree, so the settings you specify here are used throughout the source.

If you will be compiling for both SGI and NeXT, you can do both in the same directory tree. By default the Makefiles are set up to put the objects files, libraries, and executables in directories which depend on the type of computer, so the two architectures will not interfere with each other. The Makefiles use a variable called `CPU` to determine the type of machine. Before doing any compilation you must arrange for this variable to have a value. There are two ways you can do this.

1. If you will always be compiling Geomview on the same type of computer (SGI or NeXT), edit the file ``@$GEOMROOT/makefiles/Makedefs.global'` to set the `CPU` variable to either `iris4` or `NeXT`. The comments near the top of that file will tell you where to do this.

2. If you will be compiling on both types of computers you can set a shell environment variable named `CPU` to either `iris4` or `NeXT`, and the Makefiles will inherit the value from the environment. The script ``@$GEOMROOT/config'` determines which kind of computer you are on and sets this variable accordingly. To use this script, type `source config` in the (assuming a C-shell type shell) in the ``@$GEOMROOT'` directory shell in which you plan to do the compilation. Or you can set the variable directly; it should be either `NeXT` or `iris4`. You will need to do this in every shell in which you plan to do compilation.

   Alternately, you could modify your shell initialization file (``.cshrc'` or whatever) to set `CPU` appropriately.

Note that many of the Makefiles refer to a variable called `MACHTYPE` to determine the type of machine. This is set to either `sgi` or `next`, depending on the value of `CPU`.

Once you have configured your source tree by editing the files as described above and setting the `CPU` variable, you can compile and install Geomview by typing `make install` in the ``@$GEOMROOT'` directory. You can also type `make all`, or equivalently just `make`, to compile without installing, and then type `make install` later to install.

You can use these same `make` comands in any subdirectory in the tree to recompile and/or install a part of Geomview or a module.

If you want to compile fat binaries under NeXTStep 3.1, before doing any compilation edit the file ``@$GEOMROOT/makefiles/mk.next'` to uncomment a particular line there. There are comments in the file telling you which line to uncomment.

If you want to modify the complier flags used during compilation, edit the file ``@$GEOMROOT/makefiles/Makedefs.global'`; the `COPTS` variable specifies the flags passed to the C compiler (cc).

## Obtaining Geomview

Geomview is available free via anonymous ftp from Internet host ``geom.umn.edu'`, IP address 128.101.25.35. The Geomview distribution files are in the ``pub/software/geomview'` subdirectory. They are all tar archive files (``.tar'` or ``.tar.Z'` files), so you should use binary mode in ftp for transferring them to your site.

The main files are

``geomview-sgi.tar.Z'`
  The SGI binary distribution. Contains executables for running on any Silcon Graphics IRIS workstation, plus documentation and example files.

``geomview-next.tar'`
  The NeXTStep binary distribution. This contains fat binaries which will run on either a NeXT workstation running NeXTStep 3.0 or 3.1, or a 486 PC running NeXTStep 3.1. Also contains documentation and example files. This {.tar} file is not compressed because it contains the distribution compressed into a NeXT Installer package, and further compression actually increases the size of the file. To unpack ``geomview-next.tar'` on a NeXT, simple double-click on it in the Workspace.

``geomview-src.tar.Z'`
  The source code distribution; contains source code so you can compile Geomview and the distributed external modules on either an SGI or on a NeXT workstation running NeXTStep 3.0 or 3.1, or a 486 PC running NeXTStep 3.1. Also contains documentaion and examples files.

Each of the above archive files contains the entire distribution: executables or source for Geomview itself, plus all distributed external modules, example data files, and documentation. These archive files are therefore rather large. If you do not have enough disk space on your workstation for the entire distribution, various pieces of the distribution are available separately in the ``pub/software/geomview/pieces'` subdirectory. See the file ``README'` in that directory for details.

After retrieving any of the distribution archive files, you can unpack it with a command like the following

    % uncompress < geomview-sgi.tar.Z | tar xvopBf -

This will unpack the contents of the archive file into a subdirectory named ``Geomview'`. Once unpacked, you can delete the archive file.

The following is a sample ftp session for retreiving and unpacking the SGI binary distribution. After unpacking, see the file ``README'` for more information.

    artin% ftp geom.umn.edu
    Connected to geom.umn.edu.
    220 cameron FTP server (Version 5.88 Thu Jun 25 16:41:41 CDT 1992) ready.
    Name (geom.umn.edu:mbp): anonymous
    331 For password please enter your e-mail address or name and institution.
    Password:mbp@geom.umn.edu

    230 Guest login ok, access restrictions apply.
    ftp> cd pub/software/geomview
    250 CWD command successful.
    ftp> binary
    200 Type set to I.
    ftp> get geomview-sgi.tar.Z
    200 PORT command successful.
    150 Opening BINARY mode data connection for geomview-sgi.tar.Z (5815980 bytes).
    226 Transfer complete.
    local: geomview-sgi.tar.Z remote: geomview-sgi.tar.Z
    5815980 bytes received in 28.67 seconds (1.98e+02 Kbytes/s)
    ftp> quit
    221 Goodbye.
    artin% ls -l
    total 5680
    -rw-rw-r--  1 mbp      5815980 Aug 19 16:38 geomview-sgi.tar.Z
    artin% uncompress < geomview-sgi.tar.Z | tar xvopf -
    x ./CHANGES, 16910 bytes, 34 tape blocks
    ...
    artin% rm geomview-sgi.tar.Z

Go to the previous, next section.