source: trunk/INSTALL @ 2288

Last change on this file since 2288 was 1148, checked in by jpfasano, 11 years ago

MSDevStudio changed to MSVisualStudio

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 5.7 KB
Line 
1These instructions are for UNIX-like systems (including Linux, Cygwin
2and MSys) only.  If Microsoft Developer Studio projects are
3maintained for this package, you can find instructions at
4
5  https://projects.coin-or.org/MSVisualStudio
6
7**********************************************************************
8***                         DOWNLOAD                               ***
9**********************************************************************
10
11You can obtain the source code for the Clp package in two ways:
12
131. Obtain the source directly from the COIN-OR subversion repository
14   (recommended).  For this you needs the program 'svn' installed on
15   your machine, and output of "svn --version" must contain
16   "handles 'https' scheme".
17
18   Assuming that you want to download the code into a subdirectory
19   "COIN-Clp", you type
20
21   svn co https://projects.coin-or.org/svn/Clp/trunk Coin-Clp
22
232. Download the tarball from http://www.coin-or.org/Tarballs/Clp and
24   extract it, for example, with
25
26   gunzip Clp_2006Jun07.tgz
27   tar xvf Clp_2006Jun07.tar
28
29   (Here "2006Jun07" is of course replaced by the string in the
30   tarball you downloaded.)
31
32   More detailed download instructions can be found at
33
34   https://projects.coin-or.org/BuildTools/wiki/user-download
35
36**********************************************************************
37***                        CONFIGURATION                           ***
38**********************************************************************
39
40Go into the directory that you just downloaded or extracted (e.g.,
41Coin-Clp or Clp_2006Jun07).  Then you type
42
43   ./configure
44
45Note that you might have to specify additional options, in case you
46don't want to use the default choices that configure makes (e.g.,
47compilers).  Please visit
48
49   https://projects.coin-or.org/BuildTools/wiki/user-configure
50
51and the Clp Trac page
52
53   https://projects.coin-or.org/Clp
54
55for more information.
56
57If everything went fine, you will see at the end of the output
58
59   "Main configuration of Clp successful"
60
61**********************************************************************
62***                COMPILATION AND INSTALLATION                    ***
63**********************************************************************
64
65In the directory where you ran the configure script:
66
671. Compile the code by typing
68
69   make
70
712. To test if the code works, you can type
72
73   make test
74
753. To install the code, you type
76
77   make install
78
79   After this, you will find the executables, libraries and header
80   files in the "bin", "lib" and "include" subdirectory, respectively.
81
82More information on the compilation and installation can be found at
83
84   https://projects.coin-or.org/BuildTools/wiki/user-compile
85
86**********************************************************************
87***                     USING THE LIBRARIES                        ***
88**********************************************************************
89
90Now you can link your own code with the installed libraries.  You can
91find examples in the
92
93   Clp/examples/
94
95subdirectory, see also the information at
96
97   https://projects.coin-or.org/BuildTools/wiki/user-examples
98
99
100
101==== 8< ======================================================
102
103From here on you find the original installation instructions for the
104previous GNU Makefile build system.  Most details have changed, but
105for now we keep it here so that possibly missing items might be found
106here.
107
108Prerequisites for installation:
109- at the moment on (*)nix platforms you must use g++ 2.95.2 or higher.
110- must use gnu make
111- to make the documentation doxygen must be installed
112
113Targets are put in subdirectories, whose name is derived from the
114platform name (as returned by `uname`) and the optimization level
115(e.g., Linux-g).
116
117To build Clp library and unitTest
118  - read and edit the top of Makefile to select
119      - whether shared or static library should be built
120      - optimization level
121      - where the compiled library should be installed
122  - read and edit ../Common/make/Makefile.locations to uncomment Clp lines
123  - 'make' to build and install the library.
124  - 'make unitTest' to create the unitTest program. It will be placed
125    in the target subdirectory.
126
127  - 'make doc' to create the html documentation of the classes in the
128    library and place them in doc/html.
129
130To run Clp unitTest
131  - clp -unitTest from Clp directory
132To run Clp on netlib
133  - clp -netlib from Clp directory (or -netlibp for primal).
134
135To build Clp executable (after Clp libraries)
136  In This directory 'make unitTest'.  This actually creates and executable
137    clp in this directory which can both do unit test and act as simple
138    Clp driver
139
140Tuning information.  On Intel Linux I modified Makefiles/Makefile.Linux to add:
141
142ifeq ($(OptLevel),-O1)
143     CXXFLAGS += -DNDEBUG
144     CXXFLAGS += -ffast-math -fomit-frame-pointer
145     CXXFLAGS += -march=i686
146endif
147
148in Coin/Makefile I added the following to get dense code handling
149
150CXXFLAGS += -DDENSE_CODE=1
151
152and change Optimization level to -O1 (same level in Clp/Makefile.Clp).
153
154and finally in Clp/Test/Makefile.test I added
155
156#if DENSE and using given libraries
157LDFLAGS += -llapack -lblas -lg2c
158
159If you have not got these libraries then leave out dense code flags
160
161For more information see README and files in Samples
162
163IMPORTANT new note
164To address the problem of stability I have gone over to a new system of releases.
165Now a new release is a more minor thing but has its own snapshot.  To find out what
166releases have snapshots just do
167
168make restore
169
170To restore Clp and Coin files to that snapshot do
171
172make restore BACKUP=xxxx where a snapshot Clp_xxxx.tar or Clp_xxxx.tar.gz is available
173and check that it looks OK.  Then do make restore BACKUP=xxxx CONFIRM=YES to actually
174overwrite files.  Then do make unitTest.
175
176You can also create your own snapshots with make dist or make backup.  BUT use great care.
Note: See TracBrowser for help on using the repository browser.