Next: Nonuniform color and precision, Previous: Header and macros, Up: Compilation with QDP
Normally, it is necessary to link four QDP libraries for a given choice of color and precision. Other libraries may be required if mixing precisions or numbers of color. Routines involving only integers and the random state are common to all choices. Routines involving only real or complex numbers are common to all colors. Thus for single precision SU(3) the required libraries are linked through
-lqdp_f3 -lqdp_f -lqdp_int -lqdp_common
with the library search path set to QDP_HOME/lib. Each library will depend on the corresponding QLA library. Also since global sums are done in a higher precision, using them requires linking to QLA libraries of the next higher precision in addition to the corresponding conversion library. For the above example one would also need
-lqla_f3 -lqla_f -lqla_d3 -lqla_d -lqla_df3 -lqla_df -lqla_int -lqla_random -lqla_cmath -lm
in addition to the QIO and QMP libraries which typically are
-lqio -llime -lqmp
and any other system dependent libraries such as MPI. A complete list of the QDP libraries is given below.
Name | Purpose
|
libqdp_common.a | QDP utilities
|
libqdp_int.a | integer and boolean
|
libqdp_f.a | real and complex single precision
|
libqdp_d.a | real and complex double precision
|
libqdp_df.a | real and complex precision conversion
|
libqdp_f2.a | 2 color single precision
|
libqdp_d2.a | 2 color double precision
|
libqdp_df2.a | 2 color precision conversion
|
libqdp_f3.a | 3 color single precision
|
libqdp_d3.a | 3 color double precision
|
libqdp_df3.a | 3 color precision conversion
|
libqdp_fn.a | N color single precision
|
libqdp_dn.a | N color double precision
|
libqdp_dfn.a | N color precision conversion
|