How to get Cubpack++ up and running?
------------------------------------

1) Getting the suffix right
---------------------------
At this  stage  of  C++,  a  uniform  installation  procedure  is
impossible  (one  of  the  reasons  is that templates are treated
differently by different systems). With this file we provide some
help.

At the moment all source code is located in one directory,  named
`Code'.  All C++ source files have suffix .c on the distribution.
Start with verifying what suffix your compiler expects.
- If  this is .c, you have nothing to change.
  (This is the case with e.g. gcc (gnu), xlC (IBM), CC (Sun).
   With some other compilers (e.g. Turbo C++) this is not the
   default, but you can specify it with a compiler option.)
- If there is absolutely no way to persuade your compiler to accept
  .c files as C++ code, you have to change not only the suffixes of
  the files itself but also inside the header files of template classes
  where .c files are included.  For those working on Unix systems, we
  provided some shell scripts to do this.  These are located in the
  directory `Tools'.  Change your current working directory to `Tools',
  learn from the file `CONTENTS' which script you need and execute if
  from where you are. Other users can learn from these scripts (e.g.
  c2C) which files they have to modify.

2) Compile the package
----------------------
Those working on a Unix system can now try to execute
        make  install
in  the parent directory. Then you can choose between the several
compilers we used.

Those working on MSDOS can now try to execute
        INSTALL
in the parent directory, and choose a compiler.

Now you can go for coffee or lunch, depending on your platform.
Some timings to give you an idea:
     IBM RS6000 AIX 3.2.5, xlC compiler
     -    181.0u 34.0s 6:09 58%
     i586 90 MHz Linux1.2.4, g++ compiler (gcc v2.7.2)
     -    208.79u 36.69s 4:29.19 91%
     DECalpha OSF/1 V1.3, cxx compiler
     -    272.08u 62.45s 13:00 42%
     Sparccenter 1000, SunOS 5.3, g++ compiler ( gcc v2.7.2)
     -    296.0u 49.0s 7:28 76%
     DECstation 5000/240  ULTRIX V4.4 , g++ compiler (gcc v2.7.2)
     -    366.3u 85.6s 15:31 48%
     Sparccenter 1000, SunOS 5.3, CC compiler
     -    286.0u 186.0s 28:49 27%
     i486 33MHz MS-DOS  Turbo C++ 3.0 compiler
     -    7min38s elapsed time
     HP, HP-UX, g++ compiler (gcc v2.6.0)
     -    499.2u 41.3s 10:36 84%
     DECstation 5000/120  ULTRIX V4.4 , g++ compiler (gcc v2.7.2)
     -    747.8u 148.6s 19:45 75%
---------------
| If you use one of the platforms on which we tested  Cubpack++  no
| problem should occur. If it does, please let us know.
|
| If you use another Unix platform, writing a specific makefile (by
| modifying  one  of  those we provided in the directory Tools) and
| extending the script quick_install, should be straitforward.   If
| you  are not feeling that familiar with makefiles, please ask and
| we will help.
|
| If you are not using a Unix platform, we  hope  you  know  enough
| about  your  system  to  get  Cubpack++ at work. Probably you can
| still find useful information in the makefiles we provided in the
| directory Tools.
---------------

This was the time consuming part which never has to be done again
if you continue to use the same platform.

3) Trying some examples
-----------------------
Those working on a Unix system can now try to execute
        make  run
in the parent directory. You  are  requested  to  select  a  main
program. You  can  choose among the examples we provided or enter
the name of your own main program.

When the compilation finished successfully, an  executable  named
`tst' is available in the parent directory.

Those working on MSDOS can now try to execute
        TESTCASE n
in the parent directory, where n is a number in the range 1 to 11.
(Executing TESTCASE without a number will give a menu.)
The corresponding main program will be copied into the CODE directory,
compiled, linked and executed.  The output will be written to the
file CODE\VBn.OUT and may be compared with EXAMPLES\VBn.OUT.
---------------
| If you have problems linking with  libcubpack.a you can replace
| this with $(OBJS) in the lines that define tst.
---------------

If you want to have an interactive  interface  ( e.g.,  to  avoid
writing and compiling C++ code), please have a look at  the  file
named `INSTALL.ITF' .


4) Using Cubpack++
------------------
It is of course far from ideal that the user program  has  to  be
copied  into  the  directory  where  the Cubpack++ source code is
located. Because templates are treated differently  on  different
platforms,  we  cannot  (yet)  provide a good alternative for all
platforms. The ideal solution we have in mind can be realized for
those using the  gnu  gcc  compiler, the cxx compiler on DECalpha
OSF  or  the  CC compiler on Solaris.  In the directory Tools  we
provided a Makefile which  a  user  can  copy  into  his  working
directory.  He should modify the values of the constants CUBPACK,
MYTESTPROG and TARGET in the beginning of these files,  depending
on his situation and wishes.


5) Cleaning up
--------------
To remove all object files, archive, the template data base, execute
	make clean
in the parent directory.


6) In case of problems
----------------------
In case of installation problems, please don't wait to contact one
of the authors:
-----------------------------------------------------------------------------
| Name   : Ronald  Cools                                                    |
| Email  : ronald.cools@cs.kuleuven.ac.be  Katholieke Universiteit Leuven   |
|          ronald@cs.kuleuven.ac.be        Department of Computer Science   |
|                                          Celestijnenlaan 200 A            |
| Fax    : +(32) 16 32 79 96               B-3001 HEVERLEE                  |
| Phone  : +(32) 16 32 75 62               BELGIUM                          |
-----------------------------------------------------------------------------
For MSDOS installation, contact:
-----------------------------------------------------------------------------
| Name   : Dirk Laurie                                                      |
| Email  : dirk@calvyn.puk.ac.za       Potchefstroomse Universiteit vir CHO |
|          na.dlaurie@na-net.ornl.gov  Department of Mathematics            |
|                                      P.O.Box 1174                         |
| Fax    : +(27) 16 807 3614           1900 VANDERBIJLPARK                  |
| Phone  : +(27) 16 807 3600           South Africa                         |
-----------------------------------------------------------------------------
