| 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
 | 
| kpeter@318 |     30 |       file. It also compiles the programs in the tools and demo subdirectories
 | 
| kpeter@318 |     31 |       when enabled.
 | 
| 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 | 
 | 
| alpar@5 |     78 | --enable-demo
 | 
| alpar@5 |     79 | 
 | 
| ladanyi@245 |     80 |    Build the examples in the demo subdirectory.
 | 
| alpar@5 |     81 | 
 | 
| alpar@5 |     82 | --disable-demo
 | 
| alpar@5 |     83 | 
 | 
| ladanyi@245 |     84 |    Do not build the examples in the demo subdirectory (default).
 | 
| alpar@5 |     85 | 
 | 
| ladanyi@245 |     86 | --enable-tools
 | 
| ladanyi@245 |     87 | 
 | 
| ladanyi@245 |     88 |    Build the programs in the tools subdirectory (default).
 | 
| ladanyi@245 |     89 | 
 | 
| ladanyi@245 |     90 | --disable-tools
 | 
| ladanyi@245 |     91 | 
 | 
| ladanyi@245 |     92 |    Do not build the programs in the tools subdirectory.
 | 
| alpar@5 |     93 | 
 | 
| alpar@5 |     94 | --with-glpk[=PREFIX]
 | 
| alpar@5 |     95 | 
 | 
| alpar@5 |     96 |    Enable GLPK support (default). You should specify the prefix too if
 | 
| alpar@5 |     97 |    you installed GLPK to some non-standard location (e.g. your home
 | 
| alpar@5 |     98 |    directory). If it is not found, GLPK support will be disabled.
 | 
| alpar@5 |     99 | 
 | 
| alpar@5 |    100 | --with-glpk-includedir=DIR
 | 
| alpar@5 |    101 | 
 | 
| alpar@5 |    102 |    The directory where the GLPK header files are located. This is only
 | 
| alpar@5 |    103 |    useful when the GLPK headers and libraries are not under the same
 | 
| alpar@5 |    104 |    prefix (which is unlikely).
 | 
| alpar@5 |    105 | 
 | 
| alpar@5 |    106 | --with-glpk-libdir=DIR
 | 
| alpar@5 |    107 | 
 | 
| alpar@5 |    108 |    The directory where the GLPK libraries are located. This is only
 | 
| alpar@5 |    109 |    useful when the GLPK headers and libraries are not under the same
 | 
| alpar@5 |    110 |    prefix (which is unlikely).
 | 
| alpar@5 |    111 | 
 | 
| alpar@5 |    112 | --without-glpk
 | 
| alpar@5 |    113 | 
 | 
| alpar@5 |    114 |    Disable GLPK support.
 | 
| alpar@5 |    115 | 
 | 
| alpar@5 |    116 | --with-cplex[=PREFIX]
 | 
| alpar@5 |    117 | 
 | 
| alpar@5 |    118 |    Enable CPLEX support (default). You should specify the prefix too
 | 
| alpar@5 |    119 |    if you installed CPLEX to some non-standard location
 | 
| alpar@5 |    120 |    (e.g. /opt/ilog/cplex75). If it is not found, CPLEX support will be
 | 
| alpar@5 |    121 |    disabled.
 | 
| alpar@5 |    122 | 
 | 
| alpar@5 |    123 | --with-cplex-includedir=DIR
 | 
| alpar@5 |    124 | 
 | 
| alpar@5 |    125 |    The directory where the CPLEX header files are located. This is
 | 
| alpar@5 |    126 |    only useful when the CPLEX headers and libraries are not under the
 | 
| alpar@5 |    127 |    same prefix (e.g.  /usr/local/cplex/cplex75/include).
 | 
| alpar@5 |    128 | 
 | 
| alpar@5 |    129 | --with-cplex-libdir=DIR
 | 
| alpar@5 |    130 | 
 | 
| alpar@5 |    131 |    The directory where the CPLEX libraries are located. This is only
 | 
| alpar@5 |    132 |    useful when the CPLEX headers and libraries are not under the same
 | 
| alpar@5 |    133 |    prefix (e.g.
 | 
| alpar@5 |    134 |    /usr/local/cplex/cplex75/lib/i86_linux2_glibc2.2_gcc3.0/static_pic_mt).
 | 
| alpar@5 |    135 | 
 | 
| alpar@5 |    136 | --without-cplex
 | 
| alpar@5 |    137 | 
 | 
| alpar@5 |    138 |    Disable CPLEX support.
 | 
| ladanyi@245 |    139 | 
 | 
| ladanyi@245 |    140 | --with-soplex[=PREFIX]
 | 
| ladanyi@245 |    141 | 
 | 
| ladanyi@245 |    142 |    Enable SoPlex support (default). You should specify the prefix too if
 | 
| ladanyi@245 |    143 |    you installed SoPlex to some non-standard location (e.g. your home
 | 
| ladanyi@245 |    144 |    directory). If it is not found, SoPlex support will be disabled.
 | 
| ladanyi@245 |    145 | 
 | 
| ladanyi@245 |    146 | --with-soplex-includedir=DIR
 | 
| ladanyi@245 |    147 | 
 | 
| ladanyi@245 |    148 |    The directory where the SoPlex header files are located. This is only
 | 
| ladanyi@245 |    149 |    useful when the SoPlex headers and libraries are not under the same
 | 
| ladanyi@245 |    150 |    prefix (which is unlikely).
 | 
| ladanyi@245 |    151 | 
 | 
| ladanyi@245 |    152 | --with-soplex-libdir=DIR
 | 
| ladanyi@245 |    153 | 
 | 
| ladanyi@245 |    154 |    The directory where the SoPlex libraries are located. This is only
 | 
| ladanyi@245 |    155 |    useful when the SoPlex headers and libraries are not under the same
 | 
| ladanyi@245 |    156 |    prefix (which is unlikely).
 | 
| ladanyi@245 |    157 | 
 | 
| ladanyi@245 |    158 | --without-soplex
 | 
| ladanyi@245 |    159 | 
 | 
| ladanyi@245 |    160 |    Disable SoPlex support.
 |