Hello all,
I am facing an issue when starting the gvmd service, after compiling the code from sources. I compiled all Greenbone components from github sources and using the latest release (v20.8.1) and my OS is RHEL 7.9 (see versions and environment details below), and postgresql version 13.
When trying to start the gvmd service, it fails with the following logs in gvmd.log:
md manage:WARNING:2021-03-05 16h37.06 utc:31759: sql_exec_internal: SQL: CREATE OR REPLACE FUNCTION hosts_contains (text, text) RETURNS boolean AS '/opt/gvm/lib/libgvm-pg-server', 'sql_hosts_contains' LANGUAGE C IMMUTABLE;
md manage:WARNING:2021-03-05 16h37.06 utc:31759: sqlv: sql_exec_internal failed
md main:MESSAGE:2021-03-05 16h39.07 utc:31878: Greenbone Vulnerability Manager version 20.08.1~git-cda1613-HEAD (GIT revision cda1613-HEAD) (DB revision 233)
md manage:WARNING:2021-03-05 16h39.07 utc:31879: sql_exec_internal: PQexec failed: ERROR: could not load library "/opt/gvm/lib/libgvm-pg-server.so": /opt/gvm/lib/libgcrypt.so.20: symbol gpgrt_lock_lock, version GPG_ERROR_1.0 not defined in file libgpg-error.so.0 with link time reference
(7)
I understand that Greenbone does not provide any guarantee that it will work on another distribution than Debian, but in my case installing on Debian is unfortunately not an option. Therefore if someone has an idea of what could be the problem, or at least an idea of something to look for, any help would be really appreciated !
I don’t know if it helps but for information, I am able to start the gsad service.
Thanks for you answer. Unfortunately I am already compiling libgpg-error version 1.39 and I made sure the compiler is using this version when compiling Greenbone components, so I don’t think this is the issue.
Thanks for your answer. I tried what you suggested and checked with ldd that all librairies are properly linked: all seem correct but I keep getting the same error …
For info I am compiling libgpg-error version 1.42 (latest) and libgcrypt version 1.8.7 (latest stable). I also checked that symbol gpgrt_lock_lock is defined in libgpg-error.so.0 with objdump, and it is well defined.
Hi, thanks for your answers. The folder is already in LD_LIBRARY_PATH env variable.
Actually the links to the libraries seem ok, following are the output of ldd and objdump commands: