All interfaces (data types and functions) of the library are defined in the header file gcrypt.h. You must include this in all source files using the library, either directly or through some other header file, like this:
The name space of Libgcrypt is
gcry_* for function
and type names and
GCRY* for other symbols. In addition the
same name prefixes with one prepended underscore are reserved for
internal use and should never be used by an application. Note that
Libgcrypt uses libgpg-error, which uses
name space for function and type names and
GPG_* for other
symbols, including all the error codes.
Certain parts of gcrypt.h may be excluded by defining these macros:
Do not define the shorthand macros
Do not include definitions for deprecated features. This is useful to make sure that no deprecated features are used.