Added documentation about BLAS and LAPACK

This commit is contained in:
Laurent Saboret 2007-05-29 15:38:51 +00:00
parent 7ed1a00c04
commit 9f430ac2e9
5 changed files with 178 additions and 98 deletions

View File

@ -96,8 +96,9 @@ in <windows.h> which were clashing with min/max functions.
6.7 Surface Mesh Parametrization 6.7 Surface Mesh Parametrization
Added Jacobi and SSOR preconditioners to OpenNL solver, which makes it - Added Jacobi and SSOR preconditioners to OpenNL solver, which makes it
much faster and more stable. much faster and more stable.
- Updated the precompiled libraries for BLAS, LAPACK and TAUCS.
6.8 2D Arrangements 6.8 2D Arrangements
@ -179,8 +180,8 @@ This is a bug fix release
- Surface Mesher - Surface Mesher
Fixed a bug in iterators of the class template Surface_mesh_complex_2_in_triangulation_3 Fixed a bug in iterators of the class template Surface_mesh_complex_2_in_triangulation_3
- Surface Mesh Parametrisation - Surface Mesh Parametrisation
* Updated the precompiled taucs lib * Updated the precompiled TAUCS lib
- Kinetic Data Structures - Kinetic Data Structures
* Fixed problems caused by old versions of gcc being confused by operator! and operator int() * Fixed problems caused by old versions of gcc being confused by operator! and operator int()

View File

@ -1,3 +1,7 @@
25 Apr 2007 Laurent Saboret
- Split TAUCS feature as BLAS, ATLAS, LAPACK and TAUCS (for Jet_fitting_3 and Ridges_3 packages)
- Added support of ACML library (one implementation of BLAS + LAPACK)
20 March 2007 Joachim Reichel 20 March 2007 Joachim Reichel
- drop support for external CORE - drop support for external CORE

View File

@ -40,7 +40,7 @@
\newcommand{\mswin}{\textsc{MS}~Windows} \newcommand{\mswin}{\textsc{MS}~Windows}
%% macro for CGAL release number %% macro for CGAL release number
\newcommand{\cgalrelease}{3.2} \newcommand{\cgalrelease}{3.3}
%% macro for CGAL directory %% macro for CGAL directory
\newcommand{\cgaldir}{\texttt{CGAL-\cgalrelease}} \newcommand{\cgaldir}{\texttt{CGAL-\cgalrelease}}
@ -61,6 +61,9 @@
\newcommand{\trolltechpage}{\path'http://www.trolltech.com'} \newcommand{\trolltechpage}{\path'http://www.trolltech.com'}
\newcommand{\qtpage}{\path'http://doc.trolltech.com/'} \newcommand{\qtpage}{\path'http://doc.trolltech.com/'}
\newcommand{\qtmocpage}{\path'http://doc.trolltech.com/moc.html'} \newcommand{\qtmocpage}{\path'http://doc.trolltech.com/moc.html'}
\newcommand{\blaspage}{\path'http://www.netlib.org/blas/'}
\newcommand{\atlaspage}{\path'http://math-atlas.sourceforge.net/'}
\newcommand{\lapackpage}{\path'http://www.netlib.org/lapack/'}
\newcommand{\taucspage}{\path'http://www.tau.ac.il/~stoledo/taucs/'} \newcommand{\taucspage}{\path'http://www.tau.ac.il/~stoledo/taucs/'}
\newcommand{\xpage}{\path'http://www.x.org/'} \newcommand{\xpage}{\path'http://www.x.org/'}
\newcommand{\zlibpage}{\path'http://www.zlib.net/'} \newcommand{\zlibpage}{\path'http://www.zlib.net/'}
@ -91,7 +94,9 @@ libraries\footnote{\boostpage}, the \gnu\ Multiple Precision library
multiple-precision floating-point computations with exact rounding, multiple-precision floating-point computations with exact rounding,
the \core\ library\footnote{\corepage} for robust numerical and the \core\ library\footnote{\corepage} for robust numerical and
geometric computation, \leda, the Library of Efficient Datatypes and geometric computation, \leda, the Library of Efficient Datatypes and
Algorithms\footnote{\ledapage}, \taucs, a library of sparse linear Algorithms\footnote{\ledapage}, \blas, the Basic Linear Algebra Subprograms
library\footnote{\blaspage}, \lapack, the Linear Algebra PACKage library
\footnote{\lapackpage}, \taucs, a library of sparse linear
solvers\footnote{\taucspage}, or Trolltech's\footnote{\trolltechpage} solvers\footnote{\taucspage}, or Trolltech's\footnote{\trolltechpage}
\qt\ toolkit. \qt\ toolkit.
@ -241,7 +246,7 @@ mode refer to Section~\ref{sec:non-interactive}.
\section{A Sample Installation\label{sec:sample-inst}} \section{A Sample Installation\label{sec:sample-inst}}
In this section we sketch an example installation on a Linux machine In this section we sketch an example installation on a Linux machine
with the \Gcc{3.4.5} compiler. For a complete description of the with the \Gcc{4.1.1} compiler. For a complete description of the
different menus and their options refer to different menus and their options refer to
Section~\ref{sec:interactive-mode}. Section~\ref{sec:interactive-mode}.
@ -255,36 +260,31 @@ Go to the \cgaldir\ directory and enter the command
The script first parses support options for various third party The script first parses support options for various third party
libraries that can be use together with \cgal. Then you get a message libraries that can be use together with \cgal. Then you get a message
indicating the \cgal\ version you are going to install and that you indicating the \cgal\ version you are going to install and that you
are running the interactive mode. It takes some time while the script are running the interactive mode.
locates a number of utility programs. You will not get informed about
this\footnote{If you are that curious what happens exactly, have a
look at the file
\texttt{\cgaldir/install.log}.\TTindex{install.log}}, but you see
some dots written to the screen indicating progress.
{\ccTexHtml{\scriptsize}{} {\ccTexHtml{\scriptsize}{}
\begin{alltt} \begin{alltt}
Parsing support specfiles for 3rd party libraries: Looking for POSIX utilities... done.
BOOST, BOOSTPROGRAMOPTIONS, X11, GMP, GMPXX, MPFR, CORE, CGALCORE, ZLIB, ZLIBMS, LEDA, LEDAWIN, LEDAMS, LEDAWINMS, QT3MT, QT3ST, QT3MSMT, QT3MSST, TAUCSSOLARISCC, TAUCSWINMKL, TAUCSWINATLAS, TAUCSGCCATLAS, TAUCSGCCATLAS2, TAUCSINTELCCATLAS, TAUCSINTELCCMUMPS, TAUCSDARWIN, TAUCSGCCMKL, TAUCSIRIXCC32, TAUCSIRIXCC64, done. Loading support for 3rd party libraries...done.
-------------------------------------------------------- --------------------------------------------------------
This is the install script for CGAL \cgalrelease This is the install script for CGAL \cgalrelease
-------------------------------------------------------- --------------------------------------------------------
starting interactive mode - one moment, please starting interactive mode - one moment, please
.
-------------------------------------------------------- --------------------------------------------------------
Settings from Command Line/Environment: Settings from Command Line/Environment:
-------------------------------------------------------- --------------------------------------------------------
Choosing compiler GNU 3.4.5. Choosing compiler GNU 4.1.1.
\end{alltt}} \end{alltt}}
The script searches for \CC\ compilers that are installed on your The script searches for \CC\ compilers that are installed on your
system and accessible through your \texttt{PATH} environment variable. system and accessible through your \texttt{PATH} environment variable.
If more than one compiler (that is supported by \cgal) is found on If more than one compiler (that is supported by \cgal) is found on
your system, you are presented a list of compilers to choose from. In your system, you are presented a list of compilers to choose from. In
this example, only one compiler, \Gcc{3.4.5}, was found on the system this example, only one compiler, \Gcc{4.1.1}, was found on the system
and the script selects this compiler without any user interaction. In and the script selects this compiler without any user interaction. In
general, the selection of which compiler to use can be made from the general, the selection of which compiler to use can be made from the
compiler menu (cf. Section~\ref{sec:compiler-menu}). compiler menu (cf. Section~\ref{sec:compiler-menu}).
@ -301,11 +301,11 @@ A menu similar to the following will appear on your screen.\index{main
{\ccTexHtml{\scriptsize}{} \label{pic:main-menu} {\ccTexHtml{\scriptsize}{} \label{pic:main-menu}
\begin{alltt} \begin{alltt}
**************************************************************** ****************************************************************
** CGAL 3.2 Installation Main Menu ** ** CGAL 3.3 Installation Main Menu **
** =============================== ** ** =============================== **
** ** ** **
** OS: i686_Linux-2.6 ** ** OS: i686_Linux-2.6 **
** Compiler: GNU 3.4.5 ** ** Compiler: GNU 4.1.1 **
** Support for: no other library. ** ** Support for: no other library. **
** ** ** **
** Compiler is supported by CGAL. ** ** Compiler is supported by CGAL. **
@ -383,13 +383,14 @@ found.
{\ccTexHtml{\scriptsize}{} {\ccTexHtml{\scriptsize}{}
\begin{verbatim} \begin{verbatim}
**************************************************************** ****************************************************************
** CGAL 3.2 Installation Main Menu ** ** CGAL 3.3 Installation Main Menu **
** =============================== ** ** =============================== **
** ** ** **
** OS: i686_Linux-2.6 ** ** OS: i686_Linux-2.6 **
** Compiler: GNU 3.4.5 ** ** Compiler: GNU 4.1.1 **
** Support for: BOOST, BOOST_PROGRAM_OPTIONS, X11, GMP, ** ** Support for: BOOST, BOOST_PROGRAM_OPTIONS, X11, GMP, **
** GMPXX, MPFR, CORE, ZLIB, QT, and TAUCS. ** ** GMPXX, MPFR, ZLIB, BLAS, LAPACK, ATLAS, **
** OPENGL, QT, and TAUCS. **
** ** ** **
** Compiler is supported by CGAL. ** ** Compiler is supported by CGAL. **
** The setup has been tested ok. ** ** The setup has been tested ok. **
@ -429,25 +430,29 @@ at the error messages from compiler or linker.)
\begin{verbatim} \begin{verbatim}
**************************************************************** ****************************************************************
** ** ** **
** Compiling CGAL 3.2 ** ** Compiling CGAL 3.3 **
** ================== ** ** ================== **
** ** ** **
**************************************************************** ****************************************************************
OS: i686_Linux-2.6 OS: i686_Linux-2.6
COMPILER: GNU 3.4.5 COMPILER: GNU 4.1.1
BOOST: supported BOOST: supported (1.33.1)
BOOST_PROGRAM_OPTIONS: supported BOOST_PROGRAM_OPTIONS: supported (1.33.1)
X11: supported BOOST_BIMAP: not supported
GMP: supported X11: supported (11.0)
GMPXX: supported GMP: supported (4.1.4)
MPFR: supported GMPXX: supported (4.1.4)
CORE: supported MPFR: supported (unknown)
ZLIB: supported ZLIB: supported (1.2.3)
LEDA: not supported BLAS: supported (unknown version)
LEDAWIN: not supported LAPACK: supported (unknown version)
QT: supported ATLAS: supported (unknown version)
TAUCS: supported LEDA: not supported
LEDAWIN: not supported
OPENGL: supported (2.0)
QT: supported (3.3.7)
TAUCS: supported (2.x)
Generating Makefiles ... done. Generating Makefiles ... done.
Building libCGAL static ... done. Building libCGAL static ... done.
@ -478,13 +483,14 @@ install menu by choosing the option ``\texttt{i}'' from the main menu.
{\ccTexHtml{\scriptsize}{} {\ccTexHtml{\scriptsize}{}
\begin{verbatim} \begin{verbatim}
**************************************************************** ****************************************************************
** CGAL 3.2 Installation Install Menu ** ** CGAL 3.3 Installation Install Menu **
** ================================== ** ** ================================== **
** ** ** **
** OS: i686_Linux-2.6 ** ** OS: i686_Linux-2.6 **
** Compiler: GNU 3.4.5 ** ** Compiler: GNU 4.1.1 **
** Support for: BOOST, BOOST_PROGRAM_OPTIONS, X11, GMP, ** ** Support for: BOOST, BOOST_PROGRAM_OPTIONS, X11, GMP, **
** GMPXX, MPFR, CORE, ZLIB, QT, and TAUCS. ** ** GMPXX, MPFR, ZLIB, BLAS, LAPACK, ATLAS, **
** OPENGL, QT, and TAUCS. **
** ** ** **
** Compiler is supported by CGAL. ** ** Compiler is supported by CGAL. **
** The setup has been tested ok. ** ** The setup has been tested ok. **
@ -492,7 +498,7 @@ install menu by choosing the option ``\texttt{i}'' from the main menu.
** Libs built: 19 Apr 17:20 ** ** Libs built: 19 Apr 17:20 **
** ** ** **
** <D> Change Installation root directory ** ** <D> Change Installation root directory **
** /usr/local/CGAL-3.2 ** ** /usr/local/CGAL-3.3 **
** <I> Install CGAL ** ** <I> Install CGAL **
** ** ** **
** <Q> Back to Main Menu ** ** <Q> Back to Main Menu **
@ -511,7 +517,7 @@ installation by selecting ``\texttt{i}''.
\begin{verbatim} \begin{verbatim}
**************************************************************** ****************************************************************
** ** ** **
** Installing CGAL 3.2 ** ** Installing CGAL 3.3 **
** =================== ** ** =================== **
** ** ** **
**************************************************************** ****************************************************************
@ -521,7 +527,7 @@ installation by selecting ``\texttt{i}''.
**************************************************************** ****************************************************************
** ** ** **
** Target Directory: /usr/local/CGAL-3.2. ** ** Target Directory: /usr/local/CGAL-3.3. **
** Do you want to install CGAL into this directory (y/N)? ** ** Do you want to install CGAL into this directory (y/N)? **
** ** ** **
**************************************************************** ****************************************************************
@ -562,11 +568,11 @@ of \texttt{CGAL\_MAKEFILE} for the last active configuration. Remember
to set this environment variable before compiling \cgal\ applications. to set this environment variable before compiling \cgal\ applications.
On Bourne shell derivatives, you would type in our example On Bourne shell derivatives, you would type in our example
\begin{alltt} \begin{alltt}
export CGAL_MAKEFILE=\cgaldir/make/makefile_sparc_SunOS-5.6_g++-3.4.3 export CGAL_MAKEFILE=\cgaldir/make/makefile_i686_Linux-2.6_g++-4.1.1
\end{alltt} \end{alltt}
while for \texttt{csh} descendants the syntax is while for \texttt{csh} descendants the syntax is
\begin{alltt} \begin{alltt}
setenv CGAL_MAKEFILE \cgaldir/make/makefile_sparc_SunOS-5.6_g++-3.4.3 setenv CGAL_MAKEFILE \cgaldir/make/makefile_i686_Linux-2.6_g++-4.1.1
\end{alltt} \end{alltt}
In Section~\ref{sec:makefiles} you can find more information on the In Section~\ref{sec:makefiles} you can find more information on the
\cgal\ makefile structure, and how to set \texttt{CGAL\_MAKEFILE} when \cgal\ makefile structure, and how to set \texttt{CGAL\_MAKEFILE} when
@ -593,9 +599,9 @@ where you can choose the compiler you want to work with and set custom
compiler or linker options. The compiler menu is described in compiler or linker options. The compiler menu is described in
Section~\ref{sec:compiler-menu}. Section~\ref{sec:compiler-menu}.
If you want to use other libraries such as \boost, \taucs, \gmp, If you want to use other libraries such as \boost, \gmp, \mpfr, \core,
\mpfr, \core, \leda, or \qt\ with \cgal, you can setup support for \blas, \lapack, \taucs, \leda, or \qt\ with \cgal, you can setup
these libraries from the support menu that is described in support for these libraries from the support menu that is described in
Section~\ref{sec:support-menu}. Section~\ref{sec:support-menu}.
At some point, you most probably want to build the \cgal\ libraries by At some point, you most probably want to build the \cgal\ libraries by
@ -693,8 +699,8 @@ libraries.\bigskip
\index{support menu}\index{menus!support} \index{support menu}\index{menus!support}
This menu provides the starting point to setup support for third-party This menu provides the starting point to setup support for third-party
software libraries such as \boost, \taucs, \gmp, \mpfr, \core, \leda, software libraries such as \boost, \gmp, \mpfr, \core,
or \qt.\bigskip \blas, \lapack, \taucs, \leda, or \qt.\bigskip
First, it provides an option ``\texttt{Auto-find all libraries}'' to First, it provides an option ``\texttt{Auto-find all libraries}'' to
find and enable support for as many of those third-party software find and enable support for as many of those third-party software
@ -814,7 +820,7 @@ type
Even in case you disabled the automatic support for third party Even in case you disabled the automatic support for third party
libraries, boost support is still enabled because it is required. libraries, boost support is still enabled because it is required.
\subsection{Setup Support for Boostprogramoptions\label{sec:boostlibs-setup}} \subsection{Setup Support for Boost program options\label{sec:boostlibs-setup}}
\index{Boost@\boost!enable support} \index{Boost@\boost!enable support}
The \boost\ library program\_options is used by a few demo programs to The \boost\ library program\_options is used by a few demo programs to
@ -830,51 +836,107 @@ support for program\_options can be enabled with the command line
switch ``\texttt{--with-BOOSTPROGRAMOPTIONS}''. switch ``\texttt{--with-BOOSTPROGRAMOPTIONS}''.
\subsection{Setup Support for BLAS\label{sec:blas-setup}}
\index{BLAS@\blas!enable support}
The \blas\ (Basic Linear Algebra Subprograms) are routines that provide
standard building blocks for performing basic vector and matrix operations.
In \cgal, \blas\ is required by the packages
\ccRef[Estimation of Local Differential Properties]{Pkg:Jet_fitting_3}
and \ccRef[Approximation of Ridges and Umbilics]{Pkg:Ridges_3} only.
You can download the official release from \blaspage
or download optimized implementations from \path'http://www.netlib.org/blas/faq.html#5'.
Alternatively, installing \taucs\ provides \blas\ (see Section~\ref{sec:taucs-setup}).
If installed in a standard location, \blas\ should be found
automatically. Otherwise, you have to specify where \blas\ is located
on your system using the command line options
``\texttt{--BLAS\_INCL\_DIR}'' and ``\texttt{--BLAS\_LIB\_DIR}''.
In case you disabled the automatic support for third party libraries,
support for \blas\ can be enabled with the command line switches
``\texttt{--with-PACKAGENAME}'', where PACKAGENAME is one of
\texttt{APPLEVECLIB, SUNPERFORMANCECC, SUNPERFORMANCEGCC,
MKL64, MKL32, MKLWIN64, MKLWIN32, ACML, ACMLWIN, BLASIFORTATLAS, BLASGCCATLAS,
BLASWINATLAS, REFBLASGCC, REFBLASLINUXGCC, REFBLASSHARED or REFBLASWIN}
(depending of your platform and BLAS library).
\subsection{Setup Support for ATLAS\label{sec:atlas-setup}}
\index{ATLAS@\atlas!enable support}
\atlas\ provides a portably efficient \blas\ implementation,
as well as a few routines from \lapack.
You can download the official release from \atlaspage.
Alternatively, installing \taucs\ provides \atlas\ on systems with
no native \blas\ and \lapack\ implementations (see Section~\ref{sec:taucs-setup}).
Usually, \atlas\ setup is automatically deduced from \blas\ setup
(i.e. install\_cgal will detect if the \blas\ library on your machine is \atlas).
\subsection{Setup Support for LAPACK\label{sec:lapack-setup}}
\index{LAPACK@\lapack!enable support}
\lapack\ provides routines for solving systems of simultaneous linear equations,
least-squares solutions of linear systems of equations, eigenvalue problems,
and singular value problems.
In \cgal, \lapack\ is required by the packages
\ccRef[Estimation of Local Differential Properties]{Pkg:Jet_fitting_3}
and \ccRef[Approximation of Ridges and Umbilics]{Pkg:Ridges_3} only.
You can download the official release from \lapackpage.
Alternatively, installing \taucs\ customized for \cgal\ provides \lapack\
(see Section~\ref{sec:taucs-setup}).
If installed in a standard location, \lapack\ should be found
automatically. Otherwise, you have to specify where \lapack\ is located
on your system using the command line options
``\texttt{--LAPACK\_INCL\_DIR}'' and ``\texttt{--LAPACK\_LIB\_DIR}''.
In case you disabled the automatic support for third party libraries,
support for \lapack\ can be enabled with the command line switches
``\texttt{--with-PACKAGENAME}'', where PACKAGENAME is one of
\texttt{LAPACK, LAPACKWIN, REFLAPACKLINUXGCC or REFLAPACKWIN}
(depending of your platform and \lapack\ library name).
\subsection{Setup Support for TAUCS\label{sec:taucs-setup}} \subsection{Setup Support for TAUCS\label{sec:taucs-setup}}
\index{TAUCS@\taucs!enable support} \index{TAUCS@\taucs!enable support}
\taucs\ is library of sparse linear solvers. \taucs\ is a library of sparse linear solvers.
In \cgal\ it is used to speedup the computations within In \cgal, it is used to improve (a lot) the computations within the
the \ccc{Surface_mesh_parameterization} package (Planar Parameterization \ccRef[Planar Parameterization of Triangulated Surface Meshes]{Pkg:SurfaceParameterization} package only.
of Triangulated Surface Meshes) only.
You can download the official release from \taucspage You can download the official release from \taucspage
or download a version customized or download a version customized for \cgal\
by \cgal\ team from the Download section of \path'http://www.cgal.org'. from the Download section of \path'http://www.cgal.org'.
We highly recommend to install the version customized for \cgal\
See \taucs\ documentation to compile it. In a nutshell, on Unix machines: which contains an installer, bug fixes, and a complete \lapack\
\begin{verbatim} implementation.
./configure [prefix=PREFIX]
make
make install # only available in the version customized by CGAL team
\end{verbatim}
If installed in a standard location, \taucs\ should be found If installed in a standard location, \taucs\ should be found
automatically. Otherwise, you have to specify where \taucs\ is located automatically. Otherwise, you have to specify where \taucs\ is located
on your system using the command line options on your system using the command line options
``\texttt{--TAUCS\_INCL\_DIR}'' and ``\texttt{--TAUCS\_LIB\_DIR}''. For ``\texttt{--TAUCS\_INCL\_DIR}'' and ``\texttt{--TAUCS\_LIB\_DIR}''
instance, if you have uncompressed and compiled the official release of \taucs\ (you may also have to use the command line options for \blas, \lapack\
(which has no ``\texttt{make install}'' option) in \texttt{/opt/TAUCS/}, type or \atlas\ as \taucs\ requires either \blas\ plus \lapack\ or \atlas). For
instance, if you installed \taucs\ customized for \cgal\
in \texttt{/opt/TAUCS/}, type
%% %%
\begin{verbatim} \begin{verbatim}
--TAUCS_INCL_DIR "/opt/TAUCS/build/linux:/opt/TAUCS/src" --TAUCS_LIB_DIR "/opt/TAUCS/external/lib/linux:/opt/TAUCS/lib/linux" --BLAS_INCL_DIR "/opt/TAUCS/include" --BLAS_LIB_DIR "/opt/TAUCS/lib"
\end{verbatim} \end{verbatim}
%% %%
(replace ``\texttt{linux}'' by your platform).
In case you disabled the automatic support for third party libraries, In case you disabled the automatic support for third party libraries,
support for \taucs\ can be enabled with the command line switches support for \taucs\ can be enabled with the command line switches
``\texttt{--with-TAUCSSOLARISCC}'', ``\texttt{--with-PACKAGENAME}'', where PACKAGENAME is one of
``\texttt{--with-TAUCSWINMKL}'', \texttt{TAUCSWINLAPACK, TAUCSWINATLAS, TAUCSLAPACK, TAUCSATLAS,
``\texttt{--with-TAUCSWINATLAS}'', TAUCSFREEBSDLAPACK, TAUCSFREEBSDATLAS or TAUCSDARWIN}
``\texttt{--with-TAUCSGCCATLAS}'', (depending of your platform and if \lapack\ or \atlas\ is installed).
``\texttt{--with-TAUCSGCCATLAS2}'',
``\texttt{--with-TAUCSINTELCCATLAS}'',
``\texttt{--with-TAUCSINTELCCMUMPS}'',
``\texttt{--with-TAUCSDARWIN}'',
``\texttt{--with-TAUCSGCCMKL}'',
``\texttt{--with-TAUCSIRIXCC32}'', and
``\texttt{--with-TAUCSIRIXCC64}'' (depending of your platform and BLAS library).
\subsection{Setup Support for X11\label{sec:x11-setup}} \subsection{Setup Support for X11\label{sec:x11-setup}}
@ -1250,7 +1312,7 @@ whereas in csh derivatives you use
\end{alltt} \end{alltt}
For instance, For instance,
\begin{verbatim} \begin{verbatim}
setenv CGAL_MAKEFILE /usr/CGAL-3.2/make/makefile_i686_Linux-2.6_g++-3.4.4 setenv CGAL_MAKEFILE /usr/CGAL-3.3/make/makefile_i686_Linux-2.6_g++-3.4.4
\end{verbatim} \end{verbatim}
If you use \cgal\ with several different OS/compiler combination, a If you use \cgal\ with several different OS/compiler combination, a

View File

@ -18,24 +18,32 @@ Boost is a collection of libraries. \cgal\ needs some of them, that is
it is mandatory. If Boost is not already on your system, e.g., on it is mandatory. If Boost is not already on your system, e.g., on
Windows, you can download it from \path'http://www.boost.org'. Windows, you can download it from \path'http://www.boost.org'.
\subsection{Blas \label{thirdparty:Blas}} \subsection{Blas \label{thirdparty:Blas}}
A library for Basic Linear Algebra Subroutines. The \blas\ (Basic Linear Algebra Subprograms) are routines that provide
It is used in the packages \ccRef[Estimation of Local Differential Properties]{Pkg:Jet_fitting_3} standard building blocks for performing basic vector and matrix operations.
and \ccRef[Approximation of Ridges and Umbilics]{Pkg:Ridges_3} package. In \cgal, \blas\ is required by the packages
\ccRef[Estimation of Local Differential Properties]{Pkg:Jet_fitting_3}
and \ccRef[Approximation of Ridges and Umbilics]{Pkg:Ridges_3} only.
You can download the official release from \path'http://www.netlib.org/blas/'
or download optimized implementations from \path'http://www.netlib.org/blas/faq.html#5'.
Alternatively, installing \taucs\ provides \blas.
For {\sc Amd} processors \blas\ is freely provided by the {\sc Amd} Core Math Library ({\sc Acml}) and can be downloaded
from \path'http://developer.amd.com/acml.jsp'.
\subsection{Lapack \label{thirdparty:Lapack}} \subsection{Lapack \label{thirdparty:Lapack}}
A library providing a full suite of Linear Algebra. \lapack\ provides routines for solving systems of simultaneous linear equations,
It is used in the packages \ccRef[Estimation of Local Differential Properties]{Pkg:Jet_fitting_3} least-squares solutions of linear systems of equations, eigenvalue problems,
and \ccRef[Approximation of Ridges and Umbilics]{Pkg:Ridges_3} package. and singular value problems.
In \cgal, \lapack\ is required by the packages
\ccRef[Estimation of Local Differential Properties]{Pkg:Jet_fitting_3}
and \ccRef[Approximation of Ridges and Umbilics]{Pkg:Ridges_3} only.
You can download the official release from \path'http://www.netlib.org/lapack/'.
Alternatively, installing \taucs\ customized for \cgal\ provides \lapack.
For {\sc Amd} processors \lapack\ is freely provided by the {\sc Amd} Core Math Library ({\sc Acml}) and can be downloaded
from \path'http://developer.amd.com/acml.jsp'.
\subsection{GMP \label{thirdparty:GMP}} \subsection{GMP \label{thirdparty:GMP}}
@ -63,12 +71,16 @@ It is only available commercially from \path'http://www.algorithmic-solutions.co
\subsection{Taucs \label{thirdparty:Taucs}} \subsection{Taucs \label{thirdparty:Taucs}}
A library of sparse linear solvers. \taucs\ is a library of sparse linear solvers.
It can be used by the \ccRef[Surface Mesh Parameterization]{Pkg:SurfaceParameterization} package In \cgal, it is used to improve (a lot) the computations within the
in order to speed up the algorithm. \ccRef[Planar Parameterization of Triangulated Surface Meshes]{Pkg:SurfaceParameterization} package only.
You can download the official release from
\path'http://www.tau.ac.il/~stoledo/taucs/' or download a version customized You can download the official release from \path'http://www.tau.ac.il/~stoledo/taucs/'
by \cgal\ team from the Download section of \path'http://www.cgal.org'. or download a version customized for \cgal\
from the Download section of \path'http://www.cgal.org'.
We highly recommend to install the version customized for \cgal\
which contains an installer, bug fixes, and a complete \lapack\
implementation.
\subsection{OpenNL \label{thirdparty:OpenNL}} \subsection{OpenNL \label{thirdparty:OpenNL}}
@ -77,8 +89,7 @@ OpenNL (Open Numerical Library) is a library to easily construct and solve
sparse linear systems. It is the default solver of the sparse linear systems. It is the default solver of the
\ccRef[Surface Mesh Parameterization]{Pkg:SurfaceParameterization} package. \ccRef[Surface Mesh Parameterization]{Pkg:SurfaceParameterization} package.
The author is Bruno L\'evy. OpenNL's main page is \path'http://www.loria.fr/~levy/software/'.
OpenNL main page is \path'http://www.loria.fr/~levy/software/'.
\cgal\ includes a version of OpenNL in C++, made especially for \cgal\ by Bruno L\'evy. \cgal\ includes a version of OpenNL in C++, made especially for \cgal\ by Bruno L\'evy.

View File

@ -230,6 +230,7 @@
\newcommand{\ccThirdPartyOpenNL}{\ccThirdParty{OpenNL}} \newcommand{\ccThirdPartyOpenNL}{\ccThirdParty{OpenNL}}
\newcommand{\ccThirdPartyLapack}{\ccThirdParty{Lapack}} \newcommand{\ccThirdPartyLapack}{\ccThirdParty{Lapack}}
\newcommand{\ccThirdPartyBlas}{\ccThirdParty{Blas}} \newcommand{\ccThirdPartyBlas}{\ccThirdParty{Blas}}
\newcommand{\ccThirdPartyAtlas}{\ccThirdParty{Atlas}}
% --------- plain names of thirdparty stuff ------- % --------- plain names of thirdparty stuff -------
@ -244,6 +245,7 @@
\newcommand{\ntl}{\textsc{Ntl}} \newcommand{\ntl}{\textsc{Ntl}}
\newcommand{\bgl}{\textsc{bgl}} \newcommand{\bgl}{\textsc{bgl}}
\newcommand{\blas}{\textsc{blas}} \newcommand{\blas}{\textsc{blas}}
\newcommand{\atlas}{\textsc{atlas}}
\newcommand{\lapack}{\textsc{lapack}} \newcommand{\lapack}{\textsc{lapack}}