0
                         1
                         4
                     
                 
                    | 1 | 
		Installation Instructions  | 
|
| 2 | 
		=========================  | 
|
| 3 | 
		 | 
|
| 4 | 
		Since you are reading this I assume you already obtained one of the release  | 
|
| 5 | 
		tarballs and successfully extracted it. The latest version of LEMON is  | 
|
| 6 | 
		available at our webpage (http://lemon.cs.elte.hu/).  | 
|
| 7 | 
		 | 
|
| 8 | 
		In order to install LEMON from the extracted source tarball you have to  | 
|
| 9 | 
		issue the following commands:  | 
|
| 10 | 
		 | 
|
| 11 | 
		1. `cd lemon-x.y.z'  | 
|
| 12 | 
		 | 
|
| 13 | 
		This changes to the directory which was created when you extracted the  | 
|
| 14 | 
		sources. The x.y.z part is a version number.  | 
|
| 15 | 
		 | 
|
| 16 | 
		2. `./configure'  | 
|
| 17 | 
		 | 
|
| 18 | 
		This runs the configure shell script, which does some checks and  | 
|
| 19 | 
		configuration (creates makefiles etc).  | 
|
| 20 | 
		 | 
|
| 21 | 
		3. `make'  | 
|
| 22 | 
		 | 
|
| 23 | 
		This command compiles the non-template part of LEMON into libemon.a file.  | 
|
| 24 | 
		It also compiles the benchmark and demo programs when enabled.  | 
|
| 25 | 
		 | 
|
| 26 | 
		4. `make check'  | 
|
| 27 | 
		 | 
|
| 28 | 
		This step is optional, but recommended. It runs the test programs that we  | 
|
| 29 | 
		developed for LEMON to check whether the library works properly on your  | 
|
| 30 | 
		platform.  | 
|
| 31 | 
		 | 
|
| 32 | 
		5. `make install'  | 
|
| 33 | 
		 | 
|
| 34 | 
		This command installs LEMON under /usr/local (you will need root  | 
|
| 35 | 
		privileges to be able to do that). If you want to install it to some  | 
|
| 36 | 
		other location, then pass the --prefix=DIRECTORY flag to configure in  | 
|
| 37 | 
		step 1. For example: `./configure --prefix=/home/username/lemon'  | 
|
| 38 | 
		 | 
|
| 39 | 
		 | 
|
| 40 | 
		Configure Flags  | 
|
| 41 | 
		===============  | 
|
| 42 | 
		 | 
|
| 43 | 
		You can pass the following flags to configure in step 1  | 
|
| 44 | 
		(see ./configure --help for more):  | 
|
| 45 | 
		 | 
|
| 46 | 
		CXX=comp  | 
|
| 47 | 
		 | 
|
| 48 | 
		Change the C++ compiler to 'comp'.  | 
|
| 49 | 
		 | 
|
| 50 | 
		CXXFLAGS='flags'  | 
|
| 51 | 
		 | 
|
| 52 | 
		Pass the 'flags' to the compiler. For example  | 
|
| 53 | 
		CXXFLAGS='-O3 -march=pentium-m'  | 
|
| 54 | 
		turns on generation of aggressively optimized  | 
|
| 55 | 
		Pentium-M specific code.  | 
|
| 56 | 
		 | 
|
| 57 | 
		--enable-demo  | 
|
| 58 | 
		 | 
|
| 59 | 
		Build the demo programs too.  | 
|
| 60 | 
		 | 
|
| 61 | 
		--disable-demo  | 
|
| 62 | 
		 | 
|
| 63 | 
		Do not build the demo programs (default).  | 
|
| 64 | 
		 | 
|
| 65 | 
		--enable-benchmark  | 
|
| 66 | 
		 | 
|
| 67 | 
		Build the benchmark programs too.  | 
|
| 68 | 
		 | 
|
| 69 | 
		--disable-benchmark  | 
|
| 70 | 
		 | 
|
| 71 | 
		Do not build the benchmark programs (default).  | 
|
| 72 | 
		 | 
|
| 73 | 
		--with-glpk[=PREFIX]  | 
|
| 74 | 
		 | 
|
| 75 | 
		Enable GLPK support (default). You should specify the prefix too if  | 
|
| 76 | 
		you installed GLPK to some non-standard location (e.g. your home  | 
|
| 77 | 
		directory). If it is not found, GLPK support will be disabled.  | 
|
| 78 | 
		 | 
|
| 79 | 
		--with-glpk-includedir=DIR  | 
|
| 80 | 
		 | 
|
| 81 | 
		The directory where the GLPK header files are located. This is only  | 
|
| 82 | 
		useful when the GLPK headers and libraries are not under the same  | 
|
| 83 | 
		prefix (which is unlikely).  | 
|
| 84 | 
		 | 
|
| 85 | 
		--with-glpk-libdir=DIR  | 
|
| 86 | 
		 | 
|
| 87 | 
		The directory where the GLPK libraries are located. This is only  | 
|
| 88 | 
		useful when the GLPK headers and libraries are not under the same  | 
|
| 89 | 
		prefix (which is unlikely).  | 
|
| 90 | 
		 | 
|
| 91 | 
		--without-glpk  | 
|
| 92 | 
		 | 
|
| 93 | 
		Disable GLPK support.  | 
|
| 94 | 
		 | 
|
| 95 | 
		--with-cplex[=PREFIX]  | 
|
| 96 | 
		 | 
|
| 97 | 
		Enable CPLEX support (default). You should specify the prefix too  | 
|
| 98 | 
		if you installed CPLEX to some non-standard location  | 
|
| 99 | 
		(e.g. /opt/ilog/cplex75). If it is not found, CPLEX support will be  | 
|
| 100 | 
		disabled.  | 
|
| 101 | 
		 | 
|
| 102 | 
		--with-cplex-includedir=DIR  | 
|
| 103 | 
		 | 
|
| 104 | 
		The directory where the CPLEX header files are located. This is  | 
|
| 105 | 
		only useful when the CPLEX headers and libraries are not under the  | 
|
| 106 | 
		same prefix (e.g. /usr/local/cplex/cplex75/include).  | 
|
| 107 | 
		 | 
|
| 108 | 
		--with-cplex-libdir=DIR  | 
|
| 109 | 
		 | 
|
| 110 | 
		The directory where the CPLEX libraries are located. This is only  | 
|
| 111 | 
		useful when the CPLEX headers and libraries are not under the same  | 
|
| 112 | 
		prefix (e.g.  | 
|
| 113 | 
		/usr/local/cplex/cplex75/lib/i86_linux2_glibc2.2_gcc3.0/static_pic_mt).  | 
|
| 114 | 
		 | 
|
| 115 | 
		--without-cplex  | 
|
| 116 | 
		 | 
|
| 117 | 
		Disable CPLEX support.  | 
| 1 | 
		LEMON code without an explicit copyright is covered by the following  | 
|
| 2 | 
		copyright/license.  | 
|
| 3 | 
		 | 
|
| 4 | 
		Copyright (C) 2003-2007 Egervary Jeno Kombinatorikus Optimalizalasi  | 
|
| 5 | 
		Kutatocsoport (Egervary Combinatorial Optimization Research Group,  | 
|
| 6 | 
		EGRES).  | 
|
| 7 | 
		 | 
|
| 8 | 
		Permission is hereby granted, free of charge, to any person or organization  | 
|
| 9 | 
		obtaining a copy of the software and accompanying documentation covered by  | 
|
| 10 | 
		this license (the "Software") to use, reproduce, display, distribute,  | 
|
| 11 | 
		execute, and transmit the Software, and to prepare derivative works of the  | 
|
| 12 | 
		Software, and to permit third-parties to whom the Software is furnished to  | 
|
| 13 | 
		do so, all subject to the following:  | 
|
| 14 | 
		 | 
|
| 15 | 
		The copyright notices in the Software and this entire statement, including  | 
|
| 16 | 
		the above license grant, this restriction and the following disclaimer,  | 
|
| 17 | 
		must be included in all copies of the Software, in whole or in part, and  | 
|
| 18 | 
		all derivative works of the Software, unless such copies or derivative  | 
|
| 19 | 
		works are solely in the form of machine-executable object code generated by  | 
|
| 20 | 
		a source language processor.  | 
|
| 21 | 
		 | 
|
| 22 | 
		THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR  | 
|
| 23 | 
		IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,  | 
|
| 24 | 
		FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT  | 
|
| 25 | 
		SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE  | 
|
| 26 | 
		FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,  | 
|
| 27 | 
		ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER  | 
|
| 28 | 
		DEALINGS IN THE SOFTWARE.  | 
|
| 29 | 
		 | 
|
| 30 | 
		===========================================================================  | 
|
| 31 | 
		This license is a verbatim copy of the Boost Software License, Version 1.0.  | 
|
| 32 | 
		 | 
|
| 33 | 
| 1 | 
		------------------------------------------------------------------  | 
|
| 2 | 
		LEMON - a Library of Efficient Models and Optimization in Networks  | 
|
| 3 | 
		------------------------------------------------------------------  | 
|
| 4 | 
		 | 
|
| 5 | 
		LEMON is the abbreviation of Library of Efficient Models and  | 
|
| 6 | 
		Optimization in Networks. It is an open source library written in  | 
|
| 7 | 
		C++. It provides a set of easy-to-use implementation of common data  | 
|
| 8 | 
		structures and algorithms in the area of optimization and helps  | 
|
| 9 | 
		implementing new ones. It is an especially suitable tool to solve the  | 
|
| 10 | 
		design and optimization problems of telecommunications networks. To  | 
|
| 11 | 
		achieve wide usability, a fundamental design requirement is the  | 
|
| 12 | 
		genericity of interface of data structures and algorithms. LEMON is an  | 
|
| 13 | 
		open source library end invites people all around the world in its  | 
|
| 14 | 
		development.  | 
|
| 15 | 
		 | 
|
| 16 | 
		--------  | 
|
| 17 | 
		Contents  | 
|
| 18 | 
		--------  | 
|
| 19 | 
		 | 
|
| 20 | 
		COPYING, LICENSE  | 
|
| 21 | 
		 | 
|
| 22 | 
		Copying, distribution and modification conditions and terms.  | 
|
| 23 | 
		 | 
|
| 24 | 
		INSTALL  | 
|
| 25 | 
		 | 
|
| 26 | 
		For general building and installation instructions, see the file  | 
|
| 27 | 
		 | 
|
| 28 | 
		lemon/  | 
|
| 29 | 
		 | 
|
| 30 | 
		Source code of LEMON itself.  | 
|
| 31 | 
		 | 
|
| 32 | 
		doc/  | 
|
| 33 | 
		 | 
|
| 34 | 
		Documentation of LEMON. The starting page is doc/html/index/html.  | 
|
| 35 | 
		The documentation installs into the directory  | 
|
| 36 | 
		 | 
|
| 37 | 
		/usr/local/share/doc/lemon/html  | 
|
| 38 | 
		 | 
|
| 39 | 
		or -- if you use different prefix -- into  | 
|
| 40 | 
		 | 
|
| 41 | 
		    ${prefix}/share/doc/lemon/html
	 | 
|
| 42 | 
		 | 
|
| 43 | 
		(see also INSTALL).  | 
|
| 44 | 
		 | 
|
| 45 | 
		demo/  | 
|
| 46 | 
		 | 
|
| 47 | 
		Some demonstration programs to make you easier to getting familiar  | 
|
| 48 | 
		with LEMON. Use --enable-demo configure option to also compile these  | 
|
| 49 | 
		codes (see also INSTALL).  | 
|
| 50 | 
		 | 
|
| 51 | 
		test/  | 
|
| 52 | 
		 | 
|
| 53 | 
		Contains programs to check the integrity and correctness of  | 
|
| 54 | 
		LEMON. The command 'make check' performs these tests.  | 
|
| 55 | 
		 | 
|
| 56 | 
		benchmark/  | 
|
| 57 | 
		 | 
|
| 58 | 
		Contains programs measuring the performance of LEMON. Use  | 
|
| 59 | 
		--enable-benchmark configure option to also compile these codes (see  | 
|
| 60 | 
		also INSTALL).  | 
0 comments (0 inline)