lemon-project-template-glpk
diff 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 |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/deps/glpk/INSTALL Sun Nov 06 20:59:10 2011 +0100 1.3 @@ -0,0 +1,209 @@ 1.4 +INSTALLING GLPK ON YOUR COMPUTER 1.5 +******************************** 1.6 + 1.7 +Unpacking the distribution file 1.8 +------------------------------- 1.9 +The GLPK package (like all other GNU software) is distributed in the 1.10 +form of a packed archive. It is one file named `glpk-X.Y.tar.gz', where 1.11 +`X' is the major version number and `Y' is the minor version number; 1.12 +for example, the archive name might be `glpk-4.15.tar.gz'. 1.13 + 1.14 +In order to prepare the distribution for installation you should: 1.15 + 1.16 +1. Copy the GLPK distribution file to a working directory. 1.17 + 1.18 +2. Unpack the distribution file with the following command: 1.19 + 1.20 + gzip -d glpk-X.Y.tar.gz 1.21 + 1.22 + After unpacking the distribution file is automatically renamed to 1.23 + `glpk-X.Y.tar'. 1.24 + 1.25 +3. Unarchive the distribution file with the following command: 1.26 + 1.27 + tar -x < glpk-X.Y.tar 1.28 + 1.29 + It automatically creates the subdirectory `glpk-X.Y' containing the 1.30 + GLPK distribution. 1.31 + 1.32 +Configuring the package 1.33 +----------------------- 1.34 +After unpacking and unarchiving the GLPK distribution you should 1.35 +configure the package, i.e. automatically tune it for your platform. 1.36 + 1.37 +Normally, you should just `cd' to the directory `glpk-X.Y' and run the 1.38 +`configure' script, e.g. 1.39 + 1.40 + ./configure 1.41 + 1.42 +The `configure' shell script attempts to guess correct values for 1.43 +various system-dependent variables used during compilation. It uses 1.44 +those values to create a `Makefile' in each directory of the package. 1.45 +It also creates file `config.h' containing platform-dependent 1.46 +definitions. Finally, it creates a shell script `config.status' that 1.47 +you can run in the future to recreate the current configuration, a file 1.48 +`config.cache' that saves the results of its tests to speed up 1.49 +reconfiguring, and a file `config.log' containing compiler output 1.50 +(useful mainly for debugging `configure'). 1.51 + 1.52 +Running `configure' takes about a few seconds. While it is running, it 1.53 +displays some messages that tell you what it is doing. If you don't want 1.54 +to see the messages, run `configure' with its standard output redirected 1.55 +to `dev/null'; for example, `./configure > /dev/null'. 1.56 + 1.57 +By default both static and shared versions of the GLPK library will be 1.58 +compiled. Compilation of the shared librariy can be turned off by 1.59 +specifying the `--disable-shared' option to `configure', e.g. 1.60 + 1.61 + ./configure --disable-shared 1.62 + 1.63 +If you encounter problems building the library try using the above 1.64 +option, because some platforms do not support shared libraries. 1.65 + 1.66 +The GLPK package has some optional features listed below. By default 1.67 +all these features are disabled. To enable a feature the corresponding 1.68 +option should be passed to the configure script. 1.69 + 1.70 +--with-gmp Enable using the GNU MP bignum library 1.71 + 1.72 + This feature allows the exact simplex solver to use the GNU MP 1.73 + bignum library. If it is disabled, the exact simplex solver uses the 1.74 + GLPK bignum module, which provides the same functionality as GNU MP, 1.75 + however, it is much less efficient. 1.76 + 1.77 + For details about the GNU MP bignum library see its web page at 1.78 + <http://gmplib.org/>. 1.79 + 1.80 +--with-zlib Enable using the zlib data compression library 1.81 + 1.82 + This feature allows GLPK API routines and the stand-alone solver to 1.83 + read and write compressed data files performing compression and 1.84 + decompression "on the fly" (compressed data files are recognized by 1.85 + suffix `.gz' in the file name). It may be useful in case of large 1.86 + MPS files to save the disk space. 1.87 + 1.88 + For details about the zlib compression library see its web page at 1.89 + <http://www.zlib.net/>. 1.90 + 1.91 +--enable-dl The same as --enable-dl=ltdl 1.92 +--enable-dl=ltdl Enable shared library support (GNU) 1.93 +--enable-dl=dlfcn Enable shared library support (POSIX) 1.94 + 1.95 + Currently this feature is only needed to provide dynamic linking to 1.96 + ODBC and MySQL shared libraries (see below). 1.97 + 1.98 + For details about the GNU shared library support see the manual at 1.99 + <http://www.gnu.org/software/libtool/manual/>. 1.100 + 1.101 +--enable-odbc Enable using ODBC table driver (libiodbc) 1.102 +--enable-odbc=unix Enable using ODBC table driver (libodbc) 1.103 + 1.104 + This feature allows transmitting data between MathProg model objects 1.105 + and relational databases accessed through ODBC. 1.106 + 1.107 + For more details about this feature see the supplement "Using Data 1.108 + Tables in the GNU MathProg Modeling Language" (doc/tables.*). 1.109 + 1.110 +--enable-mysql Enable using MySQL table driver (libmysql) 1.111 + 1.112 + This feature allows transmitting data between MathProg model objects 1.113 + and MySQL relational databases. 1.114 + 1.115 + For more details about this feature see the supplement "Using Data 1.116 + Tables in the GNU MathProg Modeling Language" (doc/tables.*). 1.117 + 1.118 +Compiling the package 1.119 +--------------------- 1.120 +Normally, you can compile (build) the package by typing the command: 1.121 + 1.122 + make 1.123 + 1.124 +It reads `Makefile' generated by `configure' and performs all necessary 1.125 +jobs. 1.126 + 1.127 +If you want, you can override the `make' variables CFLAGS and LDFLAGS 1.128 +like this: 1.129 + 1.130 + make CFLAGS=-O2 LDFLAGS=-s 1.131 + 1.132 +To compile the package in a different directory from the one containing 1.133 +the source code, you must use a version of `make' that supports `VPATH' 1.134 +variable, such as GNU `make'. `cd' to the directory where you want the 1.135 +object files and executables to go and run the `configure' script. 1.136 +`configure' automatically checks for the source code in the directory 1.137 +that `configure' is in and in `..'. If for some reason `configure' is 1.138 +not in the source code directory that you are configuring, then it will 1.139 +report that it can't find the source code. In that case, run `configure' 1.140 +with the option `--srcdir=DIR', where DIR is the directory that contains 1.141 +the source code. 1.142 + 1.143 +Some systems require unusual options for compilation or linking that 1.144 +the `configure' script does not know about. You can give `configure' 1.145 +initial values for variables by setting them in the environment. Using 1.146 +a Bourne-compatible shell, you can do that on the command line like 1.147 +this: 1.148 + 1.149 + CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure 1.150 + 1.151 +Or on systems that have the `env' program, you can do it like this: 1.152 + 1.153 + env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure 1.154 + 1.155 +Here are the `make' variables that you might want to override with 1.156 +environment variables when running `configure'. 1.157 + 1.158 +For these variables, any value given in the environment overrides the 1.159 +value that `configure' would choose: 1.160 + 1.161 +CC: C compiler program. The default is `cc'. 1.162 + 1.163 +INSTALL: Program used to install files. The default value is `install' 1.164 + if you have it, otherwise `cp'. 1.165 + 1.166 +For these variables, any value given in the environment is added to the 1.167 +value that `configure' chooses: 1.168 + 1.169 +DEFS: Configuration options, in the form `-Dfoo -Dbar ...'. 1.170 + 1.171 +LIBS: Libraries to link with, in the form `-lfoo -lbar ...'. 1.172 + 1.173 +Checking the package 1.174 +-------------------- 1.175 +To check the package, i.e. to run some tests included in the package, 1.176 +you can use the following command: 1.177 + 1.178 + make check 1.179 + 1.180 +Installing the package 1.181 +---------------------- 1.182 +Normally, to install the GLPK package you should type the following 1.183 +command: 1.184 + 1.185 + make install 1.186 + 1.187 +By default, `make install' will install the package's files in 1.188 +`usr/local/bin', `usr/local/lib', etc. You can specify an installation 1.189 +prefix other than `/usr/local' by giving `configure' the option 1.190 +`--prefix=PATH'. Alternately, you can do so by consistently giving a 1.191 +value for the `prefix' variable when you run `make', e.g. 1.192 + 1.193 + make prefix=/usr/gnu 1.194 + make prefix=/usr/gnu install 1.195 + 1.196 +After installing you can remove the program binaries and object files 1.197 +from the source directory by typing `make clean'. To remove all files 1.198 +that `configure' created (`Makefile', `config.status', etc.), just type 1.199 +`make distclean'. 1.200 + 1.201 +The file `configure.ac' is used to create `configure' by a program 1.202 +called `autoconf'. You only need it if you want to remake `configure' 1.203 +using a newer version of `autoconf'. 1.204 + 1.205 +Uninstalling the package 1.206 +------------------------ 1.207 +To uninstall the GLPK package, i.e. to remove all the package's files 1.208 +from the system places, you can use the following command: 1.209 + 1.210 + make uninstall 1.211 + 1.212 +========================================================================