PREREQUISITES FOR INSTALLATION
==============================

NOTE: CoinDir is the path to the directory COIN
NOTE: CglDir is the path to the directory COIN/Cgl
NOTE: OsiDir is the path to the directory COIN/Osi

1. Download the necessary components (Coin, Osi, Cgl) of COIN. If you
   used CVS to get Cgl, these components should have been downloaded
   automatically.

2. At the moment, on (*)nix platforms, you must use g++ 2.95.2 or higher.

3. must use gnu make.

4. To create the documentation, Doxygen must be installed.


TO CREATE THE HTML DOCUMENTATION
================================

In CglDir, use 'make doc' to create the html documentation for
the library. By default, the created html documentation is in
CglDir/Doc/html.


TO BUILD THE CGL LIBRARY
========================

1. In CglDir/Makefile.Cgl, set LibType to STATIC or SHARED to get 
a static or dynamic Cgl library. Set the OptLevel to the level you want. 
Default values are:

LibType := SHARED
OptLevel := -O2

2. In CglDir, use 'make' to build and install the Cgl library.


TO BUILD AND RUN THE UNITTEST
=============================

1. Build and install the Cgl library by following the steps above.

2. If you have not done so before, edit CoinDir/Makefiles/Makefile.location
to select the LP solvers that you want to be able to use with Osi.
At least one of Clp, Osl, and Xpress must be installed to run the 
unitTest code. By default, Clp is installed. 

3. If the Osi libraries for the solvers selected in point 2. have not yet 
been installed, use 'make' in OsiDir to build and install them. 

4. In CglDir, use 'make unitTest' to create the executable named
unitTest.

5. In CglDir, use './unitTest' to run the test. The output depends on the 
LP solvers installed (see point 2. above). If you only have Clp installed, 
the output should look like:


Testing CglGomory with OsiClpSolverInterface
There are 2 gomory cuts
Cut 0 lb -1.79769e+308 solution 0 ub -6
(col=2,el=-1,sol=0) (col=3,el=-2,sol=0) 
Cut 1 lb -1.79769e+308 solution 0 ub -5
(col=2,el=-2,sol=0) (col=3,el=-4,sol=0) 
There are 4 gomory cuts
Cut 2 lb -1.79769e+308 solution 0 ub -1
(col=4,el=-1,sol=0) 
Cut 3 lb -1.79769e+308 solution 0 ub -1
(col=4,el=-1,sol=0) 
There are 4 gomory cuts
 ...

The output should end with:

...
Cut 7 lb -1.79769e+308 solution -272.625 ub -285
(col=6,el=-285,sol=0) (col=31,el=-200,sol=1) (col=32,el=-415,sol=0.175) 
Cut 8 lb -1.79769e+308 solution -270 ub -400
(col=6,el=-415,sol=0) (col=31,el=-200,sol=1) (col=32,el=-400,sol=0.175) 
All tests completed successfully
