lemon-project-template-glpk
comparison deps/glpk/INSTALL @ 9:33de93886c88
Import GLPK 4.47
author | Alpar Juttner <alpar@cs.elte.hu> |
---|---|
date | Sun, 06 Nov 2011 20:59:10 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:92aa53a6f255 |
---|---|
1 INSTALLING GLPK ON YOUR COMPUTER | |
2 ******************************** | |
3 | |
4 Unpacking the distribution file | |
5 ------------------------------- | |
6 The GLPK package (like all other GNU software) is distributed in the | |
7 form of a packed archive. It is one file named `glpk-X.Y.tar.gz', where | |
8 `X' is the major version number and `Y' is the minor version number; | |
9 for example, the archive name might be `glpk-4.15.tar.gz'. | |
10 | |
11 In order to prepare the distribution for installation you should: | |
12 | |
13 1. Copy the GLPK distribution file to a working directory. | |
14 | |
15 2. Unpack the distribution file with the following command: | |
16 | |
17 gzip -d glpk-X.Y.tar.gz | |
18 | |
19 After unpacking the distribution file is automatically renamed to | |
20 `glpk-X.Y.tar'. | |
21 | |
22 3. Unarchive the distribution file with the following command: | |
23 | |
24 tar -x < glpk-X.Y.tar | |
25 | |
26 It automatically creates the subdirectory `glpk-X.Y' containing the | |
27 GLPK distribution. | |
28 | |
29 Configuring the package | |
30 ----------------------- | |
31 After unpacking and unarchiving the GLPK distribution you should | |
32 configure the package, i.e. automatically tune it for your platform. | |
33 | |
34 Normally, you should just `cd' to the directory `glpk-X.Y' and run the | |
35 `configure' script, e.g. | |
36 | |
37 ./configure | |
38 | |
39 The `configure' shell script attempts to guess correct values for | |
40 various system-dependent variables used during compilation. It uses | |
41 those values to create a `Makefile' in each directory of the package. | |
42 It also creates file `config.h' containing platform-dependent | |
43 definitions. Finally, it creates a shell script `config.status' that | |
44 you can run in the future to recreate the current configuration, a file | |
45 `config.cache' that saves the results of its tests to speed up | |
46 reconfiguring, and a file `config.log' containing compiler output | |
47 (useful mainly for debugging `configure'). | |
48 | |
49 Running `configure' takes about a few seconds. While it is running, it | |
50 displays some messages that tell you what it is doing. If you don't want | |
51 to see the messages, run `configure' with its standard output redirected | |
52 to `dev/null'; for example, `./configure > /dev/null'. | |
53 | |
54 By default both static and shared versions of the GLPK library will be | |
55 compiled. Compilation of the shared librariy can be turned off by | |
56 specifying the `--disable-shared' option to `configure', e.g. | |
57 | |
58 ./configure --disable-shared | |
59 | |
60 If you encounter problems building the library try using the above | |
61 option, because some platforms do not support shared libraries. | |
62 | |
63 The GLPK package has some optional features listed below. By default | |
64 all these features are disabled. To enable a feature the corresponding | |
65 option should be passed to the configure script. | |
66 | |
67 --with-gmp Enable using the GNU MP bignum library | |
68 | |
69 This feature allows the exact simplex solver to use the GNU MP | |
70 bignum library. If it is disabled, the exact simplex solver uses the | |
71 GLPK bignum module, which provides the same functionality as GNU MP, | |
72 however, it is much less efficient. | |
73 | |
74 For details about the GNU MP bignum library see its web page at | |
75 <http://gmplib.org/>. | |
76 | |
77 --with-zlib Enable using the zlib data compression library | |
78 | |
79 This feature allows GLPK API routines and the stand-alone solver to | |
80 read and write compressed data files performing compression and | |
81 decompression "on the fly" (compressed data files are recognized by | |
82 suffix `.gz' in the file name). It may be useful in case of large | |
83 MPS files to save the disk space. | |
84 | |
85 For details about the zlib compression library see its web page at | |
86 <http://www.zlib.net/>. | |
87 | |
88 --enable-dl The same as --enable-dl=ltdl | |
89 --enable-dl=ltdl Enable shared library support (GNU) | |
90 --enable-dl=dlfcn Enable shared library support (POSIX) | |
91 | |
92 Currently this feature is only needed to provide dynamic linking to | |
93 ODBC and MySQL shared libraries (see below). | |
94 | |
95 For details about the GNU shared library support see the manual at | |
96 <http://www.gnu.org/software/libtool/manual/>. | |
97 | |
98 --enable-odbc Enable using ODBC table driver (libiodbc) | |
99 --enable-odbc=unix Enable using ODBC table driver (libodbc) | |
100 | |
101 This feature allows transmitting data between MathProg model objects | |
102 and relational databases accessed through ODBC. | |
103 | |
104 For more details about this feature see the supplement "Using Data | |
105 Tables in the GNU MathProg Modeling Language" (doc/tables.*). | |
106 | |
107 --enable-mysql Enable using MySQL table driver (libmysql) | |
108 | |
109 This feature allows transmitting data between MathProg model objects | |
110 and MySQL relational databases. | |
111 | |
112 For more details about this feature see the supplement "Using Data | |
113 Tables in the GNU MathProg Modeling Language" (doc/tables.*). | |
114 | |
115 Compiling the package | |
116 --------------------- | |
117 Normally, you can compile (build) the package by typing the command: | |
118 | |
119 make | |
120 | |
121 It reads `Makefile' generated by `configure' and performs all necessary | |
122 jobs. | |
123 | |
124 If you want, you can override the `make' variables CFLAGS and LDFLAGS | |
125 like this: | |
126 | |
127 make CFLAGS=-O2 LDFLAGS=-s | |
128 | |
129 To compile the package in a different directory from the one containing | |
130 the source code, you must use a version of `make' that supports `VPATH' | |
131 variable, such as GNU `make'. `cd' to the directory where you want the | |
132 object files and executables to go and run the `configure' script. | |
133 `configure' automatically checks for the source code in the directory | |
134 that `configure' is in and in `..'. If for some reason `configure' is | |
135 not in the source code directory that you are configuring, then it will | |
136 report that it can't find the source code. In that case, run `configure' | |
137 with the option `--srcdir=DIR', where DIR is the directory that contains | |
138 the source code. | |
139 | |
140 Some systems require unusual options for compilation or linking that | |
141 the `configure' script does not know about. You can give `configure' | |
142 initial values for variables by setting them in the environment. Using | |
143 a Bourne-compatible shell, you can do that on the command line like | |
144 this: | |
145 | |
146 CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure | |
147 | |
148 Or on systems that have the `env' program, you can do it like this: | |
149 | |
150 env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure | |
151 | |
152 Here are the `make' variables that you might want to override with | |
153 environment variables when running `configure'. | |
154 | |
155 For these variables, any value given in the environment overrides the | |
156 value that `configure' would choose: | |
157 | |
158 CC: C compiler program. The default is `cc'. | |
159 | |
160 INSTALL: Program used to install files. The default value is `install' | |
161 if you have it, otherwise `cp'. | |
162 | |
163 For these variables, any value given in the environment is added to the | |
164 value that `configure' chooses: | |
165 | |
166 DEFS: Configuration options, in the form `-Dfoo -Dbar ...'. | |
167 | |
168 LIBS: Libraries to link with, in the form `-lfoo -lbar ...'. | |
169 | |
170 Checking the package | |
171 -------------------- | |
172 To check the package, i.e. to run some tests included in the package, | |
173 you can use the following command: | |
174 | |
175 make check | |
176 | |
177 Installing the package | |
178 ---------------------- | |
179 Normally, to install the GLPK package you should type the following | |
180 command: | |
181 | |
182 make install | |
183 | |
184 By default, `make install' will install the package's files in | |
185 `usr/local/bin', `usr/local/lib', etc. You can specify an installation | |
186 prefix other than `/usr/local' by giving `configure' the option | |
187 `--prefix=PATH'. Alternately, you can do so by consistently giving a | |
188 value for the `prefix' variable when you run `make', e.g. | |
189 | |
190 make prefix=/usr/gnu | |
191 make prefix=/usr/gnu install | |
192 | |
193 After installing you can remove the program binaries and object files | |
194 from the source directory by typing `make clean'. To remove all files | |
195 that `configure' created (`Makefile', `config.status', etc.), just type | |
196 `make distclean'. | |
197 | |
198 The file `configure.ac' is used to create `configure' by a program | |
199 called `autoconf'. You only need it if you want to remake `configure' | |
200 using a newer version of `autoconf'. | |
201 | |
202 Uninstalling the package | |
203 ------------------------ | |
204 To uninstall the GLPK package, i.e. to remove all the package's files | |
205 from the system places, you can use the following command: | |
206 | |
207 make uninstall | |
208 | |
209 ======================================================================== |