Recent GnuTLS provides an abstraction above a cryptographic library like a libgcrypt or a libnettle in <gnutls crypto.h="">.
libvncserver uses the libgcrypt directly in libvncclient/rfbproto.c to support ARD authentication. libvncserver also uses GnuTLS for other reasons.
Please consider to use the GnuTLS for ARD instead of using libgcrypt directly. It allows users to drop one dependency while preserving the same functionality.