Thank you for your answer. Yes, it is exported. This only happens when RTLD_LAZY | RTLD_LOCAL mode is used with dlopen, all other combinations work fine.
❯ nm -m /usr/local/lib/libgcrypt.dylib | grep gcry_check_version 0000000000005954 (__TEXT,__text) external __gcry_check_version 0000000000002aa7 (__TEXT,__text) external _gcry_check_version