-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathINSTALL
123 lines (82 loc) · 5.13 KB
/
INSTALL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *
* This file is part of the class library *
* SoPlex --- the Sequential object-oriented simPlex. *
* *
* Copyright (C) 1996 Roland Wunderling *
* 1996-2017 Konrad-Zuse-Zentrum *
* fuer Informationstechnik Berlin *
* *
* SoPlex is distributed under the terms of the ZIB Academic Licence. *
* *
* You should have received a copy of the ZIB Academic License *
* along with SoPlex; see the file COPYING. If not email to soplex@zib.de. *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
1. All the documentation is available online at
http://soplex.zib.de
You can also generate it, if you have Doxygen installed by
typing 'make doc'. It will then be in doc/html/index.html.
On some systems, it might be necessary to use 'gmake' instead
of 'make'.
2. Compiling
Read the documentation!
For the impatient:
On systems with GNU g++ : make COMP=gnu OPT=opt (default)
Linux/x86 with Intel C++ : make COMP=intel OPT=opt
Tru64 with Compaq C++ : make COMP=compaq OPT=opt
Solaris with SUN Forte C++: make COMP=sun OPT=opt
IRIX with SGI Mips Pro C++: make COMP=sgi OPT=opt
HP-UX with HP aCC : make COMP=hp OPT=opt
AIX with VisualAge C++ : make COMP=ibm OPT=opt
Then type make COMP=<as before> OPT=<as before> test.
This should report no fails. (Requires a basic Python installation.)
If ZLIB is not available, building may fail. In this case try
make COMP=<as before> OPT=<as before> ZLIB=false
which will deactivate the possibility to read gzipped LP and MPS files.
3. Working with the 1.x interface / Compiling without the C++11 standard
We use the feature of explicit conversion operators introduced by the
C++11 standard. If your compiler does not support this, or if for other
reasons you wish to use the old SoPlex 1.x interface, you can build with
make COMP=<as before> OPT=<as before> LEGACY=true
or define "SOPLEX_LEGACY" for the compiler preprocessor. Note that this will
deactivate iterative refinement, see point 4.
4. Compiling SoPlex with GMP
For using SoPlex as an exact rational LP solver, SoPlex must be compiled
with support for the GNU Multiple Precision library (http://www.gmplib.org/)
for this. If GMP is not available, you can deactivate it by building with
make COMP=<as before> OPT=<as before> GMP=false.
If you use a different build system than the provided Makefile and
want to build with GMP support, you need to define "SOPLEX_WITH_GMP"
for the preprocessor and link with the GMP callable library.
On some MAC systems, GMP is installed under /sw/include and /sw/lib.
If these are not contained in your library and include paths, you have
to add them explicitly.
Note for building SCIP with SoPlex: If SoPlex was built with GMP=true,
then SCIP also needs to be built with the same option GMP=true (default).
5.1 Using SoPlex standalone
Start one of the binaries in the bin directory with the -h flag.
5.2 Using the library
Examples on how to use the SoPlex library are provided in the files
'src/soplexmain.cpp' and 'src/example.cpp'.
6. Bug reports
If you find any bugs, or LP-files where SoPlex fails to find the
optimal solution, please report to {gleixner,miltenberger,koch}@zib.de.
7. Publications
Any publication for which SoPlex has been used must include an
acknowledgement and a reference to the Ph.D. thesis:
Roland Wunderling,
"Paralleler und Objekt-orientierter Simplex-Algorithmus",
Ph.D. thesis, TU Berlin, 1996, available as ZIB-Report 96-09
under http://nbn-resolving.de/urn:nbn:de:0297-zib-5386
If you use SoPlex as an exact rational LP solver, please cite
the references
Ambros M. Gleixner, Daniel E. Steffy, Kati Wolter,
"Improving the Accuracy of Linear Programming Solvers with Iterative
Refinement",
Proc. of ISSAC '12, pages 187--194, 2012, available as ZIB-Report 12-19
under http://nbn-resolving.de/urn:nbn:de:0297-zib-15451
Ambros M. Gleixner, Daniel E. Steffy, Kati Wolter.
"Iterative Refinement for Linear Programming",
ZIB-Report 15-15, Zuse Institute Berlin, 2015, available under
http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:0297-zib-55118