COIN-OR::LEMON - Graph Library

source: lemon-main/INSTALL @ 835:b9b2e8abe70b

Last change on this file since 835:b9b2e8abe70b was 824:974c48bda29e, checked in by Akos Ladanyi <ladanyi@…>, 15 years ago

Add more information on Makefile variables (#316)

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