1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
|
<!DOCTYPE html>
<html>
<!-- #include "meta.shtml" -->
<body>
<!-- #include "head.shtml" -->
<h1>Building of the Oakleaf library</h1>
<p>
The Oakleaf library is distributed in the form of the source code,
and must be compiled prior to use.
</p>
<p>
It is also pre-packaged in GNU/Debian and Ubuntu. The install is, by the way:
</p>
<pre>
# [sudo] apt install liboakleaf1 liboakleaf-dev liboakleaf-doc
</pre>
<h2>Prerequisites</h2>
<p>
A modern <a href="https://gcc.gnu.org/fortran/">Fortran 2008+ compiler</a> and
<a href="https://en.wikipedia.org/wiki/MINPACK">Minpack</a> are required.
Minpack should be installed in the development version, the package is
<samp>minpack-dev</samp>.
</p>
<h2>Getting sources</h2>
<p>
<a href="http://integral.physics.muni.cz/ftp/oakleaf/">Download</a>
the source archive, and unpack it:
</p>
<pre>
$ wget https://integral.physics.muni.cz/pub/oakleaf/oakleaf-1.0.1.tar.gz
$ tar zxf oakleaf-1.0.1.tar.gz
</pre>
<h2>The package build</h2>
<p>
The Oakleaf library should to be build in the following steps:
</p>
<pre>
$ cd oakleaf-1.0.1/
$ ./configure FCFLAGS="-O2 -ffpe-trap=invalid,zero,overflow"
$ make
# make install # as root, or sudo
</pre>
<p>
It can be later un-installed, if the build directory
still exists, by command
</p>
<pre>
$ cd [some directory]/oakleaf-1.0.1/
# make uninstall # as root
</pre>
<p>
The building can be customised via optional parameters of the configure.
The optimisation <samp>"-O2"</samp> is reccomended.
The library is installed
under <samp>/usr/local</samp> by default
(see <samp>configure --help</samp>).
</p>
<p>
If Minpack is not found, although installed, by <samp>./configure</samp>,
try to add <samp>LDFLAGS="-L/usr/local/lib"</samp>
(eventually adjust the path) and check presence of the file
<samp>libminpack.a</samp>.
</p>
<h2>Smoke tests</h2>
<p>
The Oakleaf package has included a verification.
The basic tests can be executed as:
</p>
<pre>
$ make check
</pre>
<p>
The advanced testing, under a high voltage, is performed by
</p>
<pre>
$ VOLTAGE=high make check
</pre>
<h2 id="placement">The placement</h2>
<p>By default, the library is placed under <samp>/usr/local</samp>
according to the switch <samp>--prefix=</samp> of <samp>./configure</samp>.
A program is compiled as
</p>
<pre>
gfortran -I/usr/local/include .. -L/usr/local/lib ..
</pre>
<p>If the library is installed by packaging system,
<samp>--prefix=/usr</samp> is selected.
For GNU/Debian, as well as derivatives like Ubuntu or Mint, the compile step
requires only <samp>-I/usr/include</samp>:
</p>
<pre>
gfortran -I/usr/include ..
</pre>
<p>
The library can be found in <samp>/usr/lib/<arch></samp>,
where the arch <samp>x86_64-linux-gnu</samp> is just for example.
</p>
<!-- #include "foot.shtml" -->
</body>
</html>
|