COIN-OR::LEMON - Graph Library

source: glpk-cmake/INSTALL @ 1:c445c931472f

Last change on this file since 1:c445c931472f was 1:c445c931472f, checked in by Alpar Juttner <alpar@…>, 13 years ago

Import glpk-4.45

  • Generated files and doc/notes are removed
File size: 7.9 KB
Line 
1INSTALLING GLPK ON YOUR COMPUTER
2********************************
3
4Unpacking the distribution file
5-------------------------------
6The GLPK package (like all other GNU software) is distributed in the
7form 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;
9for example, the archive name might be `glpk-4.15.tar.gz'.
10
11In order to prepare the distribution for installation you should:
12
131. Copy the GLPK distribution file to a working directory.
14
152. 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
223. 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
29Configuring the package
30-----------------------
31After unpacking and unarchiving the GLPK distribution you should
32configure the package, i.e. automatically tune it for your platform.
33
34Normally, you should just `cd' to the directory `glpk-X.Y' and run the
35`configure' script, e.g.
36
37      ./configure
38
39The `configure' shell script attempts to guess correct values for
40various system-dependent variables used during compilation. It uses
41those values to create a `Makefile' in each directory of the package.
42It also creates file `config.h' containing platform-dependent
43definitions. Finally, it creates a shell script `config.status' that
44you 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
46reconfiguring, and a file `config.log' containing compiler output
47(useful mainly for debugging `configure').
48
49Running `configure' takes about a few seconds. While it is running, it
50displays some messages that tell you what it is doing. If you don't want
51to see the messages, run `configure' with its standard output redirected
52to `dev/null'; for example, `./configure > /dev/null'.
53
54By default both static and shared versions of the GLPK library will be
55compiled. Compilation of the shared librariy can be turned off by
56specifying the `--disable-shared' option to `configure', e.g.
57
58      ./configure --disable-shared
59
60If you encounter problems building the library try using the above
61option, because some platforms do not support shared libraries.
62
63The GLPK package has some optional features listed below. By default
64all these features are disabled. To enable a feature the corresponding
65option 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
115Compiling the package
116---------------------
117Normally, you can compile (build) the package by typing the command:
118
119      make
120
121It reads `Makefile' generated by `configure' and performs all necessary
122jobs.
123
124If you want, you can override the `make' variables CFLAGS and LDFLAGS
125like this:
126
127      make CFLAGS=-O2 LDFLAGS=-s
128
129To compile the package in a different directory from the one containing
130the source code, you must use a version of `make' that supports `VPATH'
131variable, such as GNU `make'. `cd' to the directory where you want the
132object files and executables to go and run the `configure' script.
133`configure' automatically checks for the source code in the directory
134that `configure' is in and in `..'. If for some reason `configure' is
135not in the source code directory that you are configuring, then it will
136report that it can't find the source code. In that case, run `configure'
137with the option `--srcdir=DIR', where DIR is the directory that contains
138the source code.
139
140Some systems require unusual options for compilation or linking that
141the `configure' script does not know about. You can give `configure'
142initial values for variables by setting them in the environment. Using
143a Bourne-compatible shell, you can do that on the command line like
144this:
145
146      CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
147
148Or 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
152Here are the `make' variables that you might want to override with
153environment variables when running `configure'.
154
155For these variables, any value given in the environment overrides the
156value that `configure' would choose:
157
158CC:      C compiler program. The default is `cc'.
159
160INSTALL: Program used to install files. The default value is `install'
161         if you have it, otherwise `cp'.
162
163For these variables, any value given in the environment is added to the
164value that `configure' chooses:
165
166DEFS:    Configuration options, in the form `-Dfoo -Dbar ...'.
167
168LIBS:    Libraries to link with, in the form `-lfoo -lbar ...'.
169
170Checking the package
171--------------------
172To check the package, i.e. to run some tests included in the package,
173you can use the following command:
174
175      make check
176
177Installing the package
178----------------------
179Normally, to install the GLPK package you should type the following
180command:
181
182      make install
183
184By default, `make install' will install the package's files in
185`usr/local/bin', `usr/local/lib', etc. You can specify an installation
186prefix other than `/usr/local' by giving `configure' the option
187`--prefix=PATH'. Alternately, you can do so by consistently giving a
188value for the `prefix' variable when you run `make', e.g.
189
190      make prefix=/usr/gnu
191      make prefix=/usr/gnu install
192
193After installing you can remove the program binaries and object files
194from the source directory by typing `make clean'. To remove all files
195that `configure' created (`Makefile', `config.status', etc.), just type
196`make distclean'.
197
198The file `configure.ac' is used to create `configure' by a program
199called `autoconf'. You only need it if you want to remake `configure'
200using a newer version of `autoconf'.
201
202Uninstalling the package
203------------------------
204To uninstall the GLPK package, i.e. to remove all the package's files
205from the system places, you can use the following command:
206
207      make uninstall
208
209========================================================================
Note: See TracBrowser for help on using the repository browser.