1 Installation Instructions  | 
     1 Installation Instructions  | 
     2 =========================  | 
     2 =========================  | 
     3   | 
     3   | 
     4    Since you are reading this I assume you already obtained one of the release  | 
     4    Since you are reading this I assume you already obtained one of the release  | 
     5 tarballs and successfully extracted it. The latest version of LEMON is  | 
     5 tarballs and successfully extracted it. The latest version of LEMON is  | 
     6 available at our webpage (http://lemon.cs.elte.hu/).  | 
     6 available at our web page (http://lemon.cs.elte.hu/).  | 
     7   | 
     7   | 
     8    In order to install LEMON from the extracted source tarball you have to  | 
     8    In order to install LEMON from the extracted source tarball you have to  | 
     9 issue the following commands:  | 
     9 issue the following commands:  | 
    10   | 
    10   | 
    11   1. `cd lemon-x.y.z'  | 
    11    1. `cd lemon-x.y.z'  | 
    12   | 
    12   | 
    13      This changes to the directory which was created when you extracted the  | 
    13       This command changes to the directory which was created when you  | 
    14      sources. The x.y.z part is a version number.  | 
    14       extracted the sources. The x.y.z part is a version number.  | 
    15   | 
    15   | 
    16   2. `./configure'  | 
    16    2. `./configure'  | 
    17   | 
    17   | 
    18      This runs the configure shell script, which does some checks and  | 
    18       This command runs the configure shell script, which does some checks and  | 
    19      configuration (creates makefiles etc).  | 
    19       creates the makefiles.  | 
    20   | 
    20   | 
    21   3. `make'  | 
    21    3. `make'  | 
    22   | 
    22   | 
    23      This command compiles the non-template part of LEMON into libemon.a file.  | 
    23       This command compiles the non-template part of LEMON into libemon.a  | 
    24      It also compiles the benchmark and demo programs when enabled.  | 
    24       file. It also compiles the programs in the tools, benchmark and demo  | 
         | 
    25       subdirectories when enabled.  | 
    25   | 
    26   | 
    26   4. `make check'  | 
    27    4. `make check'  | 
    27   | 
    28   | 
    28      This step is optional, but recommended. It runs the test programs that we  | 
    29       This step is optional, but recommended. It runs the test programs that  | 
    29      developed for LEMON to check whether the library works properly on your  | 
    30       we developed for LEMON to check whether the library works properly on  | 
    30      platform.  | 
    31       your platform.  | 
    31   | 
    32   | 
    32   5. `make install'  | 
    33    5. `make install'  | 
    33   | 
    34   | 
    34      This command installs LEMON under /usr/local (you will need root  | 
    35       This command installs LEMON under /usr/local (you will need root  | 
    35      privileges to be able to do that). If you want to install it to some  | 
    36       privileges to be able to do that). If you want to install it to some  | 
    36      other location, then pass the --prefix=DIRECTORY flag to configure in  | 
    37       other location, then pass the --prefix=DIRECTORY flag to configure in  | 
    37      step 1. For example: `./configure --prefix=/home/username/lemon'  | 
    38       step 2. For example: `./configure --prefix=/home/username/lemon'.  | 
         | 
    39   | 
         | 
    40    6. `make install-html'  | 
         | 
    41   | 
         | 
    42       This command installs the documentation under share/doc/lemon/docs. The  | 
         | 
    43       generated documentation is included in the tarball. If you want to  | 
         | 
    44       generate it yourself, then run `make html'. Note that for this you need  | 
         | 
    45       to have the following programs installed: Doxygen, Graphviz, Ghostscript,  | 
         | 
    46       Latex.  | 
    38   | 
    47   | 
    39   | 
    48   | 
    40 Configure Flags  | 
    49 Configure Options and Variables  | 
    41 ===============  | 
    50 ===============================  | 
    42   | 
    51   | 
    43    You can pass the following flags to configure in step 1  | 
    52    In step 2 you can customize the actions of configure by setting variables  | 
    44 (see ./configure --help for more):  | 
    53 and passing options to it. This can be done like this:  | 
         | 
    54 `./configure [OPTION]... [VARIABLE=VALUE]...'  | 
    45   | 
    55   | 
    46 CXX=comp  | 
    56    Below you will find some useful variables and options (see  | 
         | 
    57 `./configure --help' for more):  | 
         | 
    58   | 
         | 
    59 CXX='comp'  | 
    47   | 
    60   | 
    48   Change the C++ compiler to 'comp'.  | 
    61   Change the C++ compiler to 'comp'.  | 
    49   | 
    62   | 
    50 CXXFLAGS='flags'  | 
    63 CXXFLAGS='flags'  | 
    51   | 
    64   | 
    52   Pass the 'flags' to the compiler. For example  | 
    65   Pass the 'flags' to the compiler. For example CXXFLAGS='-O3 -march=pentium-m'  | 
    53   CXXFLAGS='-O3 -march=pentium-m'  | 
    66   turns on generation of aggressively optimized Pentium-M specific code.  | 
    54   turns  on generation of aggressively optimized  | 
    67   | 
    55   Pentium-M specific code.  | 
    68 --prefix=PREFIX  | 
         | 
    69   | 
         | 
    70   Set the installation prefix to PREFIX. By default it is /usr/local.  | 
    56   | 
    71   | 
    57 --enable-demo  | 
    72 --enable-demo  | 
    58   | 
    73   | 
    59    Build the demo programs too.  | 
    74    Build the examples in the demo subdirectory.  | 
    60   | 
    75   | 
    61 --disable-demo  | 
    76 --disable-demo  | 
    62   | 
    77   | 
    63    Do not build the demo programs (default).  | 
    78    Do not build the examples in the demo subdirectory (default).  | 
    64   | 
    79   | 
    65 --enable-benchmark  | 
    80 --enable-benchmark  | 
    66   | 
    81   | 
    67    Build the benchmark programs too.  | 
    82    Build the programs in the benchmark subdirectory.  | 
    68   | 
    83   | 
    69 --disable-benchmark  | 
    84 --disable-benchmark  | 
    70   | 
    85   | 
    71    Do not build the benchmark programs (default).  | 
    86    Do not build the programs in the benchmark subdirectory (default).  | 
         | 
    87   | 
         | 
    88 --enable-tools  | 
         | 
    89   | 
         | 
    90    Build the programs in the tools subdirectory (default).  | 
         | 
    91   | 
         | 
    92 --disable-tools  | 
         | 
    93   | 
         | 
    94    Do not build the programs in the tools subdirectory.  | 
    72   | 
    95   | 
    73 --with-glpk[=PREFIX]  | 
    96 --with-glpk[=PREFIX]  | 
    74   | 
    97   | 
    75    Enable GLPK support (default). You should specify the prefix too if  | 
    98    Enable GLPK support (default). You should specify the prefix too if  | 
    76    you installed GLPK to some non-standard location (e.g. your home  | 
    99    you installed GLPK to some non-standard location (e.g. your home  | 
   113    /usr/local/cplex/cplex75/lib/i86_linux2_glibc2.2_gcc3.0/static_pic_mt).  | 
   136    /usr/local/cplex/cplex75/lib/i86_linux2_glibc2.2_gcc3.0/static_pic_mt).  | 
   114   | 
   137   | 
   115 --without-cplex  | 
   138 --without-cplex  | 
   116   | 
   139   | 
   117    Disable CPLEX support.  | 
   140    Disable CPLEX support.  | 
         | 
   141   | 
         | 
   142 --with-soplex[=PREFIX]  | 
         | 
   143   | 
         | 
   144    Enable SoPlex support (default). You should specify the prefix too if  | 
         | 
   145    you installed SoPlex to some non-standard location (e.g. your home  | 
         | 
   146    directory). If it is not found, SoPlex support will be disabled.  | 
         | 
   147   | 
         | 
   148 --with-soplex-includedir=DIR  | 
         | 
   149   | 
         | 
   150    The directory where the SoPlex header files are located. This is only  | 
         | 
   151    useful when the SoPlex headers and libraries are not under the same  | 
         | 
   152    prefix (which is unlikely).  | 
         | 
   153   | 
         | 
   154 --with-soplex-libdir=DIR  | 
         | 
   155   | 
         | 
   156    The directory where the SoPlex libraries are located. This is only  | 
         | 
   157    useful when the SoPlex headers and libraries are not under the same  | 
         | 
   158    prefix (which is unlikely).  | 
         | 
   159   | 
         | 
   160 --without-soplex  | 
         | 
   161   | 
         | 
   162    Disable SoPlex support.  |