These instructions are for UNIX-like systems (including Linux, Cygwin and MSys) only. If Microsoft Developer Studio projects are maintained for this package, you can find instructions at https://projects.coin-or.org/MSVisualStudio ********************************************************************** *** DOWNLOAD *** ********************************************************************** You can obtain the source code for the Clp package in two ways: 1. Obtain the source directly from the COIN-OR subversion repository (recommended). For this you needs the program 'svn' installed on your machine, and output of "svn --version" must contain "handles 'https' scheme". Assuming that you want to download the code into a subdirectory "COIN-Clp", you type svn co https://projects.coin-or.org/svn/Clp/trunk Coin-Clp 2. Download the tarball from http://www.coin-or.org/Tarballs/Clp and extract it, for example, with gunzip Clp_2006Jun07.tgz tar xvf Clp_2006Jun07.tar (Here "2006Jun07" is of course replaced by the string in the tarball you downloaded.) More detailed download instructions can be found at https://projects.coin-or.org/BuildTools/wiki/user-download ********************************************************************** *** CONFIGURATION *** ********************************************************************** Go into the directory that you just downloaded or extracted (e.g., Coin-Clp or Clp_2006Jun07). Then you type ./configure Note that you might have to specify additional options, in case you don't want to use the default choices that configure makes (e.g., compilers). Please visit https://projects.coin-or.org/BuildTools/wiki/user-configure and the Clp Trac page https://projects.coin-or.org/Clp for more information. If everything went fine, you will see at the end of the output "Main configuration of Clp successful" ********************************************************************** *** COMPILATION AND INSTALLATION *** ********************************************************************** In the directory where you ran the configure script: 1. Compile the code by typing make 2. To test if the code works, you can type make test 3. To install the code, you type make install After this, you will find the executables, libraries and header files in the "bin", "lib" and "include" subdirectory, respectively. More information on the compilation and installation can be found at https://projects.coin-or.org/BuildTools/wiki/user-compile ********************************************************************** *** USING THE LIBRARIES *** ********************************************************************** Now you can link your own code with the installed libraries. You can find examples in the Clp/examples/ subdirectory, see also the information at https://projects.coin-or.org/BuildTools/wiki/user-examples ==== 8< ====================================================== From here on you find the original installation instructions for the previous GNU Makefile build system. Most details have changed, but for now we keep it here so that possibly missing items might be found here. Prerequisites for installation: - at the moment on (*)nix platforms you must use g++ 2.95.2 or higher. - must use gnu make - to make the documentation doxygen must be installed Targets are put in subdirectories, whose name is derived from the platform name (as returned by `uname`) and the optimization level (e.g., Linux-g). To build Clp library and unitTest - read and edit the top of Makefile to select - whether shared or static library should be built - optimization level - where the compiled library should be installed - read and edit ../Common/make/Makefile.locations to uncomment Clp lines - 'make' to build and install the library. - 'make unitTest' to create the unitTest program. It will be placed in the target subdirectory. - 'make doc' to create the html documentation of the classes in the library and place them in doc/html. To run Clp unitTest - clp -unitTest from Clp directory To run Clp on netlib - clp -netlib from Clp directory (or -netlibp for primal). To build Clp executable (after Clp libraries) In This directory 'make unitTest'. This actually creates and executable clp in this directory which can both do unit test and act as simple Clp driver Tuning information. On Intel Linux I modified Makefiles/Makefile.Linux to add: ifeq ($(OptLevel),-O1) CXXFLAGS += -DNDEBUG CXXFLAGS += -ffast-math -fomit-frame-pointer CXXFLAGS += -march=i686 endif in Coin/Makefile I added the following to get dense code handling CXXFLAGS += -DDENSE_CODE=1 and change Optimization level to -O1 (same level in Clp/Makefile.Clp). and finally in Clp/Test/Makefile.test I added #if DENSE and using given libraries LDFLAGS += -llapack -lblas -lg2c If you have not got these libraries then leave out dense code flags For more information see README and files in Samples IMPORTANT new note To address the problem of stability I have gone over to a new system of releases. Now a new release is a more minor thing but has its own snapshot. To find out what releases have snapshots just do make restore To restore Clp and Coin files to that snapshot do make restore BACKUP=xxxx where a snapshot Clp_xxxx.tar or Clp_xxxx.tar.gz is available and check that it looks OK. Then do make restore BACKUP=xxxx CONFIRM=YES to actually overwrite files. Then do make unitTest. You can also create your own snapshots with make dist or make backup. BUT use great care.