File: globalLibs.tex

package info (click to toggle)
spooles 2.2-9
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 19,012 kB
  • sloc: ansic: 146,834; csh: 3,615; makefile: 2,040; perl: 74
file content (58 lines) | stat: -rw-r--r-- 2,267 bytes parent folder | download | duplicates (7)
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
\par
\section{Building global libraries}
\par
To build the global serial library {\tt spooles.a}, type the
following.
\begin{verbatim}
% cd spooles
% make lib
\end{verbatim}
This visits each of the serial objects' {\tt src/} directories,
compiles the source code and loads it into the {\tt spooles.a}
library.
Note, this option requires the Perl language installed on the
system, for we use a Perl script to generate a temporary makefile
for each object.
If your computer system does {\it not} have Perl installed, 
this option will have the same result.
\begin{verbatim}
% cd spooles
% make global
\end{verbatim}
This approach uses hard-coded makefile inside each {\tt src/}
directory, and is less reliable than the first way.
\par
The result of either of these two commands is a {\tt spooles.a}
library that is present in the top level {\tt spooles} directory.
Recall, this only contains the serial code.
This process may take a long time, for there are about 140,000 
lines of source code in the library.
\par
To build a multithreaded library, one must go to the {\tt MT/src}
directory.
Now we have two choices --- to build a separate {\tt spoolesMT.a}
library, or two merge the multithreaded code into the {\tt
spooles.a} library.
We recommend the first, via typing {\tt make spoolesMT.a},
though the second is perfectly fine by typing {\tt make makeLib}.
If Perl is not installed, type {\tt make -f makeGlobalLib} for the
latter behavior.
\par
Much the same applies to the MPI library.
To build a MPI library, one must go to the {\tt MPI/src}
directory.
Now we have two choices --- to build a separate {\tt spoolesMPI.a}
library, or two merge the MPI code into the {\tt
spooles.a} library.
We recommend the first, via typing {\tt make spoolesMPI.a},
though the second is perfectly fine by typing {\tt make makeLib}.
If Perl is not installed, type {\tt make -f makeGlobalLib} for the
latter behavior.
\par
Note, in the top level {\tt spooles/makefile} there are two lines
commented out under the {\tt lib:} target which will compile the
multithreaded and MPI source code into {\tt spooles.a}.
If you uncomment these lines, (replace the {\tt \#} with a tab),
and type {\tt make lib}, then the multithreaded and MPI source will
be included in {\tt spooles.a}.
\par