File: build.html

package info (click to toggle)
oakleaf 1.0.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,536 kB
  • sloc: sh: 3,972; f90: 337; makefile: 174; awk: 11
file content (145 lines) | stat: -rw-r--r-- 3,982 bytes parent folder | download
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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link type="text/css" rel="stylesheet" href="oakleaf.css">
  <link rel="icon" href="favicon.ico">
  <title>Oakleaf</title>
</head>
<body>
  <header>
    <div class="headleaf"><a style="text-decoration: none;" href="oakleaf.html">☘</a></div>
    <nav>
	<a style="font-weight: bold;" href="oakleaf.html">☘ Oakleaf</a>
	<div class="nav-content">
	  <ol type="i">
	    <li><a href="fortran.html">Fortran</a>
	      <ul class="nav">
		<li><a href="rmean.html">M-estimates</a></li>
		<li><a href="order.html">The order statistics</a></li>
<!--		<li><a href="fortran.html#fmean">Flux mean</a></li>-->
	      </ul>
	    </li>
	    <li><a href="status.html">Status codes</a></li>
	  </ol>
	</div>
    </nav>
  </header>

  <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/&lt;arch&gt;</samp>,
    where the arch <samp>x86_64-linux-gnu</samp> is just for example.
  </p>

<footer>
  © 2018 – 2025
  <a class="footer"
      href="https://integral.physics.muni.cz/"
      title="author's homepage">Filip Hroch</a>
</footer>
</body>
</html>