Every C file that references {\CDI} functions or constants must contain
an appropriate {\tt include} statement before the first such reference:

\begin{verbatim}
   #include "cdi.h"
\end{verbatim}

Unless the {\tt cdi.h} file is installed in a standard directory where
C compiler always looks, you must use the {\tt -I} option when invoking
the compiler, to specify a directory where {\tt cdi.h} is installed, for example:

\begin{verbatim}
   cc -c -I/usr/local/cdi/include myprogram.c
\end{verbatim}

Alternatively, you could specify an absolute path name in the {\tt include}
statement, but then your program would not compile on another platform
where {\CDI} is installed in a different location.

Unless the {\CDI} library is installed in a standard directory where the linker
always looks, you must use the {\tt -L} and {\tt -l} options to links an object file that
uses the {\CDI} library. For example:

\begin{verbatim}
   cc -o myprogram myprogram.o -L/usr/local/cdi/lib -lcdi -lm
\end{verbatim}

Alternatively, you could specify an absolute path name for the library:

\begin{verbatim}
   cc -o myprogram myprogram.o -L/usr/local/cdi/lib/libcdi -lm
\end{verbatim}

If the {\CDI} library is using other external libraries, you must add this
libraries in the same way.
For example with the netCDF library:

\begin{verbatim}
   cc -o myprogram myprogram.o -L/usr/local/cdi/lib -lcdi -lm \
                               -L/usr/local/netcdf/lib -lnetcdf
\end{verbatim}
