**********************************************************************
***                         DOWNLOAD                               ***
**********************************************************************

You can obtain the source code for the Blis package in two ways:

1. Obtain the source directly from the COIN-OR subversion repository
   (recommended). For this, you need a subversion client installed. For a
   command-line client, check out the code with

   svn co https://projects.coin-or.org/svn/Cops/Blis/stable/0.9 Blis-0.9

2. Download the source in a compressed file from from
   http://www.coin-or.org/download/source/Cops and
   extract it, for example, with

   tar -xzvf Blis-0.9.0.tgz

   More detailed download instructions can be found at

   https://projects.coin-or.org/Cops

**********************************************************************
*** CONFIGURATION, COMPILE, INSTALLATION (UNIX-LIKE ENVIRONMENTS)  ***
**********************************************************************

1. Serial Solver
----------------

Switch to the directory in which you just downloaded or extracted the source
(e.g., Blis-0.9) and execute the following commands:

  1) ./configure
  2) make
  3) make test
  4) make install 

To run Blis, type 

	BUILDDIR/bin/blis -param blis.par

   Knap can also read in parameters from command line, for instance

	BUILDDIR/bin/blis -Alps_instance BUILDDIR/Data/Sample/p0033.mps
	
You might want to specify other options, in case you don't want to 
use the default choices that configure makes (e.g., compilers). 
Please visit

   https://projects.coin-or.org/BuildTools

and the COPS Trac page

   https://projects.coin-or.org/Cops

for more information.

2. Parallel Solver (MPI as message passing interface) 
-----------------------------------------------------

For configuration and and compilation of the MPI parallel solver, the user has
to specify the location of MPI with options --with-mpi-incdir, --with-mpi-lib,
MPICC, and MPICXX. Switch to the directory that you just downloaded or
extracted (e.g. Blis-0.9) and execute the following commands (substituting the
correct paths and command names).

  1) ./configure --enable-static --disable-shared --with-mpi-incdir=/usr/local/mpich/include --with-mpi-lib='-L/usr/local/mpich/lib  -lmpich' MPICC=mpicc MPICXX=mpiCC
  2) make 
  3) make install

This will create an executable that you can run as follows

  mpirun -np 8 -machinefile machines BUILDDIR/bin/blis -par blis.par

Besides setting parameters in blis.par, you can also set parameters on the 
command line, which overrides the parameter values in blis.par:

  mpirun -np 8 -machinefile machines ./blis -par blis.par -Alps_instance p0033.mps -Alps_hubNum 2

You might want to specify other configuration options, in case you don't want
to use the default choices that configure makes (e.g., compilers). Please
visit

   https://projects.coin-or.org/BuildTools

and the COPS Trac page

   https://projects.coin-or.org/Cops

for more information.

3. Building Examples
--------------------

To build the example code (VRP), configure and build as above. Switch
into the appropriate subdirectory in the source distribution and type "make".

**********************************************************************
***      CONFIGURATION, COMPILE, INSTALLATION (MS Visual C++)      ***
**********************************************************************

MSVC++ project and solution files are provided for all libraries and example
codes. Simply open the files corresponding to the project you wish to build
and build it.
