source: trunk/README @ 2028

Last change on this file since 2028 was 2028, checked in by Peter, 12 years ago

added a snippet on how to hard-code cbla sinto libyat

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
  • Property svn:mime-type set to text/x-trac-wiki
File size: 5.4 KB
RevLine 
[2]1$Id: README 2028 2009-08-16 19:15:39Z peter $
2
[1939]3= About yat =
[573]4
[1939]5This directory contains the yat library. For an overview of the
6project, visit
7 
8    http://dev.thep.lu.se/yat
[573]9
[1939]10
11= Configuring and building yat =
12
[1262]13 1. If you checked out this project from the subversion repository you
14    must run '`bootstrap`' to initialize the build system.
15 2. Issue '`./configure`' to create the Makefiles. Optionally run
16    configure with '`--enable-debug`', which will turn on debug
17    options.
18 3. Compile with '`make`'.
[1303]19 4. Optionally do '`make check`' to run test programs.
20 5. '`make doc`' will generate documentation.
21 6. Issue '`make install`' to install the package on your system,
22    documentation will not be installed if documentation was not
[1939]23    generated above. Default installation location is `/usr/local`;
[1303]24    this can be changed with
25    '`./configure --prefix=/dir/to/install/to`'.
[573]26
[1939]27The `configure` script has additional options; `./configure --help`
28will offer you those choices or refer to Requirements below.
[848]29
[1059]30= Requirements =
31
[1262]32Except for the obviously needed C++ compiler there are a few packages
33and programs required for compiling yat and generate supporting
34material. The configure script will look for required programs and
35report failure to meet the requirements. Here we list some of the
[1557]36requirements, but omit required standard utilities such as echo and
[1262]37sed since these are normally available.
[1059]38
[1262]39== Required packages ==
[1059]40
[1262]41=== GSL ===
[1059]42
[1262]43GNU Scientific Library, [http://www.gnu.org/software/gsl/ GSL] version
[1939]441.8 or later. If you have GSL installed in a non-standard location,
45`./configure --with-gsl-prefix=DIR` can be useful to provide the
46location of GSL. The `gsl-config` script, which is used to retrive
47needed compiler and linker flags, is expected to be found in
48`DIR/bin/`.
[1059]49
[1262]50=== BLAS ===
[1059]51
[1262]52A C implementation of Basic Linear Algebra Subprograms
53([http://www.netlib.org/blas BLAS]) is required. GSL comes with a
54reference implementation, but you should consider getting a hardware
55optimized implementation. ATLAS provides optimized BLAS (see below).
[1059]56
[1939]57The `configure` script searches for many different BLAS libraries in a
[2019]58specific order (for details refer to `m4/yat_cblas.m4`). If you want
59to use a specific CBLAS library, `./configure --with-cblas=LIB` may be
[2028]60useful. Note, however, that the chosen/detected CBLAS library is not
61hard-coded into the installed libyat, but a user can choose a
62different CBLAS when she link her application. A way to access which
63CBLAS was detected during the configuration is to access the
64yat-config script directly or via the autoconf macros included in the
65distribution. If you do want to hard-code a choice of CBLAS into the
66installed libyat, you may provide the appropriate value to LIBS. The
67following line, for example:
[1939]68
[2028]69  #> ./configure LIBS=-lcblas
70
71will hard-code the choice of -lcblas into the libyat.
72
[1325]73=== Boost ===
74
[1939]75[http://www.boost.org Boost] version 1.33 or later. If you have Boost
76installed in a non-standard location, `./configure --with-boost=DIR`
77can be useful to provide the location of Boost. Boost header files are
78expected to be found `DIR/include`.
[1325]79
[1262]80=== quiet nan ===
[1059]81
[1262]82Quiet NaN's must be supported.
[1059]83
[1353]84=== infinity ===
85
86infinity for type double must be supported.
87
[1262]88== Optional packages ==
[1059]89
[1262]90=== ATLAS ===
91
[1059]92GSL supplies a reference implementation of BLAS. You may want to
[1262]93consider using hardware optimized BLAS. The
94[http://math-atlas.sourceforge.net/ ATLAS] software provides an
95automatic hardware optimized BLAS library.
[1059]96
97The detection of ATLAS is supported by the yat configuration script
98but in many cases the ATLAS libraries are installed in
[1262]99non-conventional directory locations. As an example, on Fedora 8,
100ATLAS libraries are
[1059]101located in /usr/lib/atlas or /usr/lib64/atlas depending on your
102hardware architecture. If you have ATLAS installed and the configure
103script fails to locate it, try to add the location to the atlas
[1078]104libraries when running configure:
[1059]105
[1424]106  #> ./configure LDFLAGS="-L/usr/lib64/atlas"
[1059]107
[1262]108=== Doxygen ===
[1059]109
[1442]110[http://www.doxygen.org/ Doxygen] 1.5 (or newer) is required for
111generation of the API documentation. Doxygen uses a number of
112applications, epstopdf, latex, makeindex, and pdflatex. If any of
113these applications are missing, generation of API documentation is
114disabled.
[1262]115
[1272]116= Documentation =
[1262]117
[1272]118The API documentation for the latest release is availabe in PDF and
[1437]119HTML and can be found through http://dev.thep.lu.se/yat. If you wish
[1272]120to build a local copy, issue `make doc` and you will find the
121documents in directory `doc/`.
[1262]122
[1368]123= Developers =
124
[1371]125See file README.developer for developer specific information.
[1368]126
[1262]127----------------------------------------------------------------------
128{{{
129Copyright (C) 2003 Jari Häkkinen, Peter Johansson
130Copyright (C) 2004 Jari Häkkinen
[1275]131Copyright (C) 2006, 2007, 2008 Jari Häkkinen, Peter Johansson
[2028]132Copyright (C) 2009 Peter Johansson
[1262]133
[1437]134This file is part of yat library, http://dev.thep.lu.se/yat
[1262]135
136The yat library is free software; you can redistribute it and/or
137modify it under the terms of the GNU General Public License as
[1486]138published by the Free Software Foundation; either version 3 of the
[1262]139License, or (at your option) any later version.
140
141The yat library is distributed in the hope that it will be useful, but
142WITHOUT ANY WARRANTY; without even the implied warranty of
143MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
144General Public License for more details.
145
146You should have received a copy of the GNU General Public License
[1487]147along with yat. If not, see <http://www.gnu.org/licenses/>.
[1262]148}}}
Note: See TracBrowser for help on using the repository browser.