The following are brief installation instructions (from source code) for 
Numarray.  

Since Numarray uses Python's distutils, this should be a fairly automatic
process.

We are not yet supplying windows binaries so having VC++ available
is a requirement.

We currently use Tim Peters' doctest for regression testing. 

==============================================================
1. UNIX: We have tested on several UNIX platforms including:

* Linux-x86 (RedHat 8.0/ gcc-3.2 / Python-2.2.2)

* Solaris-UltraSparc (Solaris 8 / Sun C / Python-2.2.2)

* Tru64-Alpha        (OSF1 / v5.1 / DEC C / Python-2.2.2)

  Installation ok, works fine.   
  Issues with over- and underflow in test-suite.

==========================================================================
2. UNIX: Unpack the distribution tarball into a directory:

% gunzip -c numarray-xxx.tar.gz | tar xf -
% cd numarray-xxx

==========================================================================
3. UNIX: Build Numarray using the distutils:

Do a default installation if you can:
% python setup.py config install --gencode

This will try to install numarray in python's site-packages directory.
Since site-packages is already on PYTHONPATH you're ready to selftest.

                       ----- OR ------

For more flexibility (if you need to do a "user" level install):
% python setup.py install --gencode --install-lib=<dir> --install-headers=<dir>/numarray

which will install everything under <dir>/numarray, with the exception of the
file 'numarray.pth' which is stored in <dir>.  Since you picked <dir>, you need
to:

setenv PYTHONPATH "<dir>/numarray:$PYTHONPATH"

or:

export PYTHONPATH="<dir>/numarray:$PYTHONPATH"

or:

cp numarray/Doc/sitecustomize.py <dir>
setenv PYTHONPATH <dir>

The latter solution lets you set up <dir> as a user-level site-packages.
See the comments in site-customize.py for more explanation.  In short, you
only have to add <dir> to PYTHONPATH to support *multiple* packages located
within <dir>.

                       ----- OR ------

For even more installation pleasure:
% python setup.py config install --gencode --prefix=<desired installation directory>

for Windows and Unix (on Unix the installation will go into:
<installation dir>/lib/python2.x/site-packages/numarray)

                       ----- OR ------

Starting with version 0.41, numarray also supports two step installation:

python setup.py config build --gencode
python setup.py install  (--gencode should be omitted!)

                       ----- OR ------

For Unix this form will probably be more convenient:
% python setup.py config install --gencode --home=<personal module directory>
(ends up in the lib/python directory)

Lastly, if you need a hammer, add --force to force setup to install
the files even if it thinks they're already up to date.

Another frequently usefuly technique is to completely delete your *old*
numarray installation prior to installing the *new* one.

To see more distutils options:
% python setup.py --help 

For the latest distutils documentation from the Python crew look at:
http://python.sourceforge.net/devel-docs/inst/inst.html

==============================================================

5. UNIX:  Self-test Numarray:

[jmiller@halloween ~/numarray-0.6]$ python
Python 2.3 (#3, Jul 30 2003, 13:30:29)
[GCC 3.2 20020903 (Red Hat Linux 8.0 3.2-7)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numarray.testall as testall
>>> testall.test()
numarray:                               ((0, 1123), (0, 1123))
numarray.records:                       (0, 48)
numarray.strings:                       (0, 166)
numarray.memmap:                        (0, 75)
numarray.objects:                       (0, 72)
numarray.examples.convolve:             ((0, 20), (0, 20), (0, 20), (0, 20))
numarray.convolve:                      (0, 42)
numarray.fft:                           (0, 75)
numarray.linear_algebra:                (0, 46)
numarray.image:                         (0, 2)
numarray.image.combine:                 (0, 15)
numarray.random_array:                  (0, 53)
numarray.ma:                            (0, 671)

The numbers (tuples) in the results represent the number of errors and
number of tests executed for each numarray module, e.g.. there were zero
errors detected in 1123 tests of numarray.  The number of test cases is
likely to change in the future, so don't be alarmed if your counts
don't match exactly.  Tuples of tuples indicate multiple passes of the
same basic test, for various reasons.

==============================================================
Win-32: (Installation from source)
==============================================================

0. Win-32: To install numarray, you need to be in the Administrator
account.  As a general rule, always remove (or hide) any old version
of numarray before installing the next version.

1. Win-32: We have tested Numarrray on several Win-32 platforms including:

Windows-XP-Pro-x86    ( MSVC-6.0)
Windows-XP-Home-x86   ( MSVC-6.0)
Windows-NT-x86        ( MSVC-6.0)   
Windows-98-x86        ( MSVC-6.0)

2. Win-32: First, unpack the distribution:
(NOTE: You may have to download an "unzipping" utility)

C:\> unzip numarray.zip   
C:\> cd numarray

3. Win-32: Build it using the distutils defaults:

C:\numarray> python setup.py install --gencode

This installs numarray in C:\pythonXX where XX is the version number of 
your python installation, e.g. 20, 21, etc.

4. Win-32: Once you have installed numarray, test it with:

C:\numarray> python
Python 2.3 (#3, Jul 30 2003, 13:30:29) [MSC 32 bit (Intel)] on win32
Type "copyright", "credits" or "license" for more information.
>>> import numarray.testall as testall
>>> testall.test()
numarray:                               ((0, 1123), (0, 1123))
records:                                (0, 48)
strings:                                (0, 166)
memmap:                                 (0, 75)
objects:                                (0, 72)
numarray.examples.convolve:             ((0, 20), (0, 20), (0, 20), (0, 20))
numarray.convolve:                      (0, 42)
numarray.fft:                           (0, 75)
numarray.linear_algebra:                (0, 46)
numarray.image:                         (0, 2)
numarray.image.combine:                 (0, 15)
numarray.random_array:                  (0, 53)
numarray.ma:                            (0, 671)

The numbers (tuples) in the results represent the number of errors and
number of tests executed for each numarray module, e.g.. there were zero
errors detected in 1123 tests of numarray.  The number of test cases is
likely to change in the future, so don't be alarmed if your counts
don't match exactly.  Tuples of tuples indicate multiple passes of the
same basic test, for various reasons.

==============================================================
Win-32: (Installation from self-installing executable)
==============================================================

0. Win-32: To install numarray, you need to be in the Administrator
account.  As a general rule, always remove (or hide) any old version
of numarray before installing the next version.

1. Click on the executable's icon to run the installer.

2. Click "next" several times.  I have not experimented with
customizing the installation directory and don't recommend changing
any of the installation defaults.  If you do and have problems, let me
(jmiller@stsci.edu) know.

3. Assuming everything else goes smoothly, click "finish".

4. Test numarray as above in Win-32: (Installation from Source)



==============================================================
Special Notes:
==============================================================

1. i386 linux -- if compiling against GNU libc on i386 and enabling
SSE processor functions (with something like "-march=athlon-xp" or
using other libraries that utilize SSE such as atlas or Intel IPP)
then libc version 2.3.3 or above will be needed.

