| alpar@5 |      1 | Installation Instructions
 | 
| alpar@5 |      2 | =========================
 | 
| alpar@5 |      3 | 
 | 
| kpeter@318 |      4 | Since you are reading this I assume you already obtained one of the release
 | 
| alpar@5 |      5 | tarballs and successfully extracted it. The latest version of LEMON is
 | 
| ladanyi@245 |      6 | available at our web page (http://lemon.cs.elte.hu/).
 | 
| alpar@5 |      7 | 
 | 
| kpeter@493 |      8 | LEMON provides two different build environments, one is based on "autotool",
 | 
| kpeter@493 |      9 | while the other is based on "cmake". This file contains instructions only for
 | 
| kpeter@493 |     10 | the former one, which is the recommended build environment on Linux, Mac OSX
 | 
| kpeter@493 |     11 | and other unices or if you use Cygwin on Windows. For cmake installation
 | 
| kpeter@493 |     12 | instructions visit http://lemon.cs.elte.hu.
 | 
| kpeter@493 |     13 | 
 | 
| kpeter@318 |     14 | In order to install LEMON from the extracted source tarball you have to
 | 
| alpar@5 |     15 | issue the following commands:
 | 
| alpar@5 |     16 | 
 | 
| ladanyi@245 |     17 |    1. `cd lemon-x.y.z'
 | 
| alpar@5 |     18 | 
 | 
| ladanyi@245 |     19 |       This command changes to the directory which was created when you
 | 
| ladanyi@245 |     20 |       extracted the sources. The x.y.z part is a version number.
 | 
| alpar@5 |     21 | 
 | 
| ladanyi@245 |     22 |    2. `./configure'
 | 
| alpar@5 |     23 | 
 | 
| ladanyi@245 |     24 |       This command runs the configure shell script, which does some checks and
 | 
| ladanyi@245 |     25 |       creates the makefiles.
 | 
| alpar@5 |     26 | 
 | 
| ladanyi@245 |     27 |    3. `make'
 | 
| alpar@5 |     28 | 
 | 
| ladanyi@245 |     29 |       This command compiles the non-template part of LEMON into libemon.a
 | 
| ladanyi@564 |     30 |       file. It also compiles the programs in the tools subdirectory by
 | 
| ladanyi@564 |     31 |       default.
 | 
| alpar@5 |     32 | 
 | 
| ladanyi@245 |     33 |    4. `make check'
 | 
| alpar@5 |     34 | 
 | 
| ladanyi@245 |     35 |       This step is optional, but recommended. It runs the test programs that
 | 
| ladanyi@245 |     36 |       we developed for LEMON to check whether the library works properly on
 | 
| ladanyi@245 |     37 |       your platform.
 | 
| alpar@5 |     38 | 
 | 
| ladanyi@245 |     39 |    5. `make install'
 | 
| alpar@5 |     40 | 
 | 
| ladanyi@245 |     41 |       This command installs LEMON under /usr/local (you will need root
 | 
| ladanyi@245 |     42 |       privileges to be able to do that). If you want to install it to some
 | 
| ladanyi@245 |     43 |       other location, then pass the --prefix=DIRECTORY flag to configure in
 | 
| ladanyi@245 |     44 |       step 2. For example: `./configure --prefix=/home/username/lemon'.
 | 
| alpar@5 |     45 | 
 | 
| ladanyi@245 |     46 |    6. `make install-html'
 | 
| alpar@5 |     47 | 
 | 
| ladanyi@245 |     48 |       This command installs the documentation under share/doc/lemon/docs. The
 | 
| ladanyi@245 |     49 |       generated documentation is included in the tarball. If you want to
 | 
| ladanyi@245 |     50 |       generate it yourself, then run `make html'. Note that for this you need
 | 
| ladanyi@245 |     51 |       to have the following programs installed: Doxygen, Graphviz, Ghostscript,
 | 
| ladanyi@245 |     52 |       Latex.
 | 
| alpar@5 |     53 | 
 | 
| alpar@5 |     54 | 
 | 
| ladanyi@245 |     55 | Configure Options and Variables
 | 
| ladanyi@245 |     56 | ===============================
 | 
| ladanyi@245 |     57 | 
 | 
| kpeter@318 |     58 | In step 2 you can customize the actions of configure by setting variables
 | 
| ladanyi@245 |     59 | and passing options to it. This can be done like this:
 | 
| ladanyi@245 |     60 | `./configure [OPTION]... [VARIABLE=VALUE]...'
 | 
| ladanyi@245 |     61 | 
 | 
| kpeter@318 |     62 | Below you will find some useful variables and options (see `./configure --help'
 | 
| kpeter@318 |     63 | for more):
 | 
| ladanyi@245 |     64 | 
 | 
| ladanyi@245 |     65 | CXX='comp'
 | 
| alpar@5 |     66 | 
 | 
| alpar@5 |     67 |   Change the C++ compiler to 'comp'.
 | 
| alpar@5 |     68 | 
 | 
| alpar@5 |     69 | CXXFLAGS='flags'
 | 
| alpar@5 |     70 | 
 | 
| ladanyi@245 |     71 |   Pass the 'flags' to the compiler. For example CXXFLAGS='-O3 -march=pentium-m'
 | 
| ladanyi@245 |     72 |   turns on generation of aggressively optimized Pentium-M specific code.
 | 
| ladanyi@245 |     73 | 
 | 
| ladanyi@245 |     74 | --prefix=PREFIX
 | 
| ladanyi@245 |     75 | 
 | 
| ladanyi@245 |     76 |   Set the installation prefix to PREFIX. By default it is /usr/local.
 | 
| alpar@5 |     77 | 
 | 
| ladanyi@245 |     78 | --enable-tools
 | 
| ladanyi@245 |     79 | 
 | 
| ladanyi@245 |     80 |    Build the programs in the tools subdirectory (default).
 | 
| ladanyi@245 |     81 | 
 | 
| ladanyi@245 |     82 | --disable-tools
 | 
| ladanyi@245 |     83 | 
 | 
| ladanyi@245 |     84 |    Do not build the programs in the tools subdirectory.
 | 
| alpar@5 |     85 | 
 | 
| alpar@5 |     86 | --with-glpk[=PREFIX]
 | 
| alpar@5 |     87 | 
 | 
| alpar@5 |     88 |    Enable GLPK support (default). You should specify the prefix too if
 | 
| alpar@5 |     89 |    you installed GLPK to some non-standard location (e.g. your home
 | 
| alpar@5 |     90 |    directory). If it is not found, GLPK support will be disabled.
 | 
| alpar@5 |     91 | 
 | 
| alpar@5 |     92 | --with-glpk-includedir=DIR
 | 
| alpar@5 |     93 | 
 | 
| alpar@5 |     94 |    The directory where the GLPK header files are located. This is only
 | 
| alpar@5 |     95 |    useful when the GLPK headers and libraries are not under the same
 | 
| alpar@5 |     96 |    prefix (which is unlikely).
 | 
| alpar@5 |     97 | 
 | 
| alpar@5 |     98 | --with-glpk-libdir=DIR
 | 
| alpar@5 |     99 | 
 | 
| alpar@5 |    100 |    The directory where the GLPK libraries are located. This is only
 | 
| alpar@5 |    101 |    useful when the GLPK headers and libraries are not under the same
 | 
| alpar@5 |    102 |    prefix (which is unlikely).
 | 
| alpar@5 |    103 | 
 | 
| alpar@5 |    104 | --without-glpk
 | 
| alpar@5 |    105 | 
 | 
| alpar@5 |    106 |    Disable GLPK support.
 | 
| alpar@5 |    107 | 
 | 
| alpar@5 |    108 | --with-cplex[=PREFIX]
 | 
| alpar@5 |    109 | 
 | 
| alpar@5 |    110 |    Enable CPLEX support (default). You should specify the prefix too
 | 
| alpar@5 |    111 |    if you installed CPLEX to some non-standard location
 | 
| alpar@5 |    112 |    (e.g. /opt/ilog/cplex75). If it is not found, CPLEX support will be
 | 
| alpar@5 |    113 |    disabled.
 | 
| alpar@5 |    114 | 
 | 
| alpar@5 |    115 | --with-cplex-includedir=DIR
 | 
| alpar@5 |    116 | 
 | 
| alpar@5 |    117 |    The directory where the CPLEX header files are located. This is
 | 
| alpar@5 |    118 |    only useful when the CPLEX headers and libraries are not under the
 | 
| alpar@5 |    119 |    same prefix (e.g.  /usr/local/cplex/cplex75/include).
 | 
| alpar@5 |    120 | 
 | 
| alpar@5 |    121 | --with-cplex-libdir=DIR
 | 
| alpar@5 |    122 | 
 | 
| alpar@5 |    123 |    The directory where the CPLEX libraries are located. This is only
 | 
| alpar@5 |    124 |    useful when the CPLEX headers and libraries are not under the same
 | 
| alpar@5 |    125 |    prefix (e.g.
 | 
| alpar@5 |    126 |    /usr/local/cplex/cplex75/lib/i86_linux2_glibc2.2_gcc3.0/static_pic_mt).
 | 
| alpar@5 |    127 | 
 | 
| alpar@5 |    128 | --without-cplex
 | 
| alpar@5 |    129 | 
 | 
| alpar@5 |    130 |    Disable CPLEX support.
 | 
| ladanyi@245 |    131 | 
 | 
| ladanyi@245 |    132 | --with-soplex[=PREFIX]
 | 
| ladanyi@245 |    133 | 
 | 
| ladanyi@245 |    134 |    Enable SoPlex support (default). You should specify the prefix too if
 | 
| ladanyi@245 |    135 |    you installed SoPlex to some non-standard location (e.g. your home
 | 
| ladanyi@245 |    136 |    directory). If it is not found, SoPlex support will be disabled.
 | 
| ladanyi@245 |    137 | 
 | 
| ladanyi@245 |    138 | --with-soplex-includedir=DIR
 | 
| ladanyi@245 |    139 | 
 | 
| ladanyi@245 |    140 |    The directory where the SoPlex header files are located. This is only
 | 
| ladanyi@245 |    141 |    useful when the SoPlex headers and libraries are not under the same
 | 
| ladanyi@245 |    142 |    prefix (which is unlikely).
 | 
| ladanyi@245 |    143 | 
 | 
| ladanyi@245 |    144 | --with-soplex-libdir=DIR
 | 
| ladanyi@245 |    145 | 
 | 
| ladanyi@245 |    146 |    The directory where the SoPlex libraries are located. This is only
 | 
| ladanyi@245 |    147 |    useful when the SoPlex headers and libraries are not under the same
 | 
| ladanyi@245 |    148 |    prefix (which is unlikely).
 | 
| ladanyi@245 |    149 | 
 | 
| ladanyi@245 |    150 | --without-soplex
 | 
| ladanyi@245 |    151 | 
 | 
| ladanyi@245 |    152 |    Disable SoPlex support.
 | 
| ladanyi@568 |    153 | 
 | 
| ladanyi@568 |    154 | --with-coin[=PREFIX]
 | 
| ladanyi@568 |    155 | 
 | 
| ladanyi@568 |    156 |    Enable support for COIN-OR solvers (CLP and CBC). You should
 | 
| ladanyi@568 |    157 |    specify the prefix too. (by default, COIN-OR tools install
 | 
| ladanyi@568 |    158 |    themselves to the source code directory). This command enables the
 | 
| ladanyi@568 |    159 |    solvers that are actually found.
 | 
| ladanyi@568 |    160 | 
 | 
| ladanyi@568 |    161 | --with-coin-includedir=DIR
 | 
| ladanyi@568 |    162 | 
 | 
| ladanyi@568 |    163 |    The directory where the COIN-OR header files are located. This is
 | 
| ladanyi@568 |    164 |    only useful when the COIN-OR headers and libraries are not under
 | 
| ladanyi@568 |    165 |    the same prefix (which is unlikely).
 | 
| ladanyi@568 |    166 | 
 | 
| ladanyi@568 |    167 | --with-coin-libdir=DIR
 | 
| ladanyi@568 |    168 | 
 | 
| ladanyi@568 |    169 |    The directory where the COIN-OR libraries are located. This is only
 | 
| ladanyi@568 |    170 |    useful when the COIN-OR headers and libraries are not under the
 | 
| ladanyi@568 |    171 |    same prefix (which is unlikely).
 | 
| ladanyi@568 |    172 | 
 | 
| ladanyi@568 |    173 | --without-coin
 | 
| ladanyi@568 |    174 | 
 | 
| ladanyi@568 |    175 |    Disable COIN-OR support.
 |