| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219 |                             ===================                            CLAPACK README FILE                            ===============================================================================================================          Version 3.2.1 (threadsafe)          Release date: June 2009 / April 2010F2C translation of LAPACK 3.2.1To get revisions info about LAPACK 3.2.1, please see http://www.netlib.org/lapack/lapack-3.2.1.html FOR SUPPORT: LAPACK Forum: http://icl.cs.utk.edu/lapack-forum/============================================================================================This README file describes how and how to install the ANSI C translation of theLAPACK library, called CLAPACK.  CLAPACK must be compiled with an ANSI StandardC compiler.  If the C compiler on your machine is an old-style C compiler, youwill have to use gcc to compile the package.  IMPORTANT NOTE:   You *CANNOT* just go to www.netlib.org/clapack, download a routine like sgesv.c and have it work unless you properly install and link to the f2c and BLAS routines as described below.  If your linker complains about missing functions, you have probably accidentally neglected this step.   Also, you will need the file "f2c.h" (included with the f2c libraries)in order to compile these routines.  The default BLAS routines included with CLAPACK in the BLAS/SRC subdirectory may also be used these will most likely be slower than a BLAS library optimized for your machine. If you do not have such an optimized BLAS library, you can get one at       http://www.netlib.org/atlas ==============================================================================For a fast default installation, you will need to  - Untar clapack.tar and modify the make.inc file   (see step 1 below)  - Make the f2c libraries                           (see step 2 below)  - Make the BLAS library                            (see step 2 below)  - Make the main library, test it, and time it by simply typing      makeIf you encounter difficulties, you may find the installation manual forthe FORTRAN version (INSTALL/lawn81.*) useful.                     Procedure for installing CLAPACK:==============================================================================(1) 'tar xvf clapack.tar' to build the following directory structure:    CLAPACK/README.install     this file    CLAPACK/BLAS/       C source for BLAS    CLAPACK/F2CLIBS/    f2c I/O functions (libI77) and math functions (libF77)    CLAPACK/INSTALL/    Testing functions and pre-tested make.inc files                        for various platforms.    CLAPACK/INCLUDE/    header files - clapack.h is including C prototypes of all the                        CLAPACK routines.    CLAPACK/SRC/        C source of LAPACK routines    CLAPACK/TESTING/    driver routines to test correctness    CLAPACK/make.inc	compiler, compile flags and library definitions, 			included in all Makefiles.		        NOTE: It's better to use gcc compiler on some older			Sun systems.    You should be sure to modify the make.inc file for your system. (2) Build the f2c libraries by doing:      make f2clib##############################################################################WARNING: 1) If your system lacks onexit() and you are not using an ANSI C            compiler, then you should change your F2CCFLAGS line in             make.inc to                F2CCFLAGS=$(CFLAGS) -DNO_ONEXIT            On at least some Sun systems, it is better to use                F2CCFLAGS=$(CFLAGS) -Donexit=on_exit         2) On at least some Sun systems, the type declaration in             F2CLIBS/libI77/rawio.h: extern FILE *fdopen(int, char*) 	    is not consistent with the one defined in stdio.h. In this case            you should comment out this line.            ##############################################################################(3) To run CLAPACK, you need to create a BLAS library.    The performance of CLAPACK largely depends on the performance    of the BLAS library.    You can either use the reference BLAS library included with    this distribution, which is easy to install but not optimized to be    fast on any particular machine, or else find a version of the     BLAS optimized for your machine.    If you want to use the reference BLAS library included with    this distribution, build it by doing      make blaslib    from the main directory.    If you want to find a BLAS library optimized for your machine,    see the note below for more details;     see also the README in the BLAS/WRAP directory.(4) Compile and run the BLAS TESTING code by doing:      cd CLAPACK/BLAS/TESTING; make -f Makeblat2      cd CLAPACK/BLAS	xblat2s < sblat2.in	xblat2d < dblat2.in	xblat2c < cblat2.in	xblat2z < zblat2.in      cd CLAPACK/BLAS/TESTING; make -f Makeblat3      cd CLAPACK/BLAS	xblat3s < sblat3.in	xblat3d < dblat3.in	xblat3c < cblat3.in	xblat3z < zblat3.in    Inspect the output files *.SUMM to confirm that no errors occurred.{NOTE: If a compiling error involving _atexit appears then see information       within the WARNING above.}{NOTE: For the highest performance, it is best to use a version of the BLAS       optimized for your particular machine. This may be done by modifying       the line          BLASLIB      = ../../blas$(PLAT).a       in CLAPACK/make.inc to point to the optimized BLAS.Link with BLAS which provides the standard CBLAS interface ==========================================================       If you are using a version of the BLAS which provides the standard        CBLAS interface (e.g. ATLAS), you need to add the appropriate "wrapper" library.       you can make the wrapper library libcblaswr.a by typing        "make cblaswrap" from the main directory.  For this setup       (ATLAS with the CBLAS wrapper), the BLASLIB line might look likeExample:Modification to make.incCC        = gccBLASLIB     = ../../libcblaswr.a -lcblas -latlasCreation of libcblaswr.a : make cblaswrapLink with BLAS which Fortran calling interface===============================================Two possibilities:	- add -DNO_BLAS_WRAP to the CC variable to when compiling and no need of a "wrapper" libraryExample:CC        = gcc -DNO_BLAS_WRAP BLASLIB = -lgoto -lpthread	 	- add the sample Fortran calling interface (libfblaswr.a) for systems with       Sun-style Fortran calling conventions is also provided; however,       this interface will need modifications to work on other       architectures which have different Fortran calling convensions.       See the README in the BLAS/WRAP subdirectory for further information. Example:CC        = gccBLASLIB = ../../libfblaswr.a -lgoto -lpthreadCreation of libfblaswr.a : make fblaswrap}(5) Build the archive containing lapack source code by doing:      cd CLAPACK/SRC; make(6) Compile the matrix generation software, the eigenroutine TESTING    code, the linear system TESTING code, and run the LAPACK tests     by doing:      cd CLAPACK/TESTING/MATGEN; make      cd CLAPACK/TESTING; make    Inspect the output files *.out to confirm that no errors occurred.I.   Compile the matrix generation software, the eigenroutine TESTING code,     the linear system TESTING code, and run the LAPACK tests separately     by doing:	cd CLAPACK/TESTING/MATGEN; make	cd CLAPACK/TESTING/EIG; make	cd CLAPACK/TESTING/LIN; make	cd CLAPACK/TESTING; makeII. After the executable files and libraries have been created for each     of the compiles, the object files should be removed by doing:	make cleanIII.  Each 'make' may be accomplished just for one or a subset of the      precisions desired.  For example:	make single	make single complex	make single double complex complex16     Using make without any arguments will compile all four precisions.James DemmelXiaoye Li		Chris PuscasiuSteve TimsonUC BerkeleySept 27 1993{Revised by Susan Ostrouchov and Jude Toth} {The University of Tennessee at Knoxville}             {October 15, 1993}{Revised by Xiaoye Li and James Demmel} {University of California at Berkeley}             {November 22, 1994}{Revised by David Bindel and James Demmel} {University of California at Berkeley}             {July 19, 2000}{Revised by Julie Langou} {University of Tennessee}             {February 2008}{Revised by Julie Langou}{University of Tennessee}			 {October 2008, April 2010}{Revised by Peng Du}{University of Tennessee}			 {May 2009}
 |