Bugzilla – Bug 935
libsudo_util.so: undefined reference to `gcry_md_close' (and other gcrypt related functions)
Last modified: 2020-07-22 09:59:53 MDT
Created attachment 545 [details] build.log Trying to build sudo-1.9.2rc1 fails with undefind references to gcrypt functions: libtool: link: x86_64-pc-linux-gnu-gcc -o .libs/sudo_logsrvd logsrv_util.o eventlog.o iolog_writer.o logsrvd.o logsrvd_conf.o -Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common -Wl,--enable-new-dtags -Wl,-z -Wl,relro -fPIE -pie -fstack-protector-strong -pthread -pthread -Wl,--as-needed ../lib/iolog/.libs/libsudo_iolog.a /var/tmp/portage/app-admin/sudo-1.9.2_rc1/work/sudo-1.9.2rc1/lib/util/.libs/libsudo_util.so -lpthread ../lib/logsrv/.libs/liblogsrv.a -lssl -lcrypto -lz -ldl -pthread -Wl,-rpath -Wl,/usr/libexec/sudo /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/app-admin/sudo-1.9.2_rc1/work/sudo-1.9.2rc1/lib/util/.libs/libsudo_util.so: undefined reference to `gcry_md_close' /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/app-admin/sudo-1.9.2_rc1/work/sudo-1.9.2rc1/lib/util/.libs/libsudo_util.so: undefined reference to `gcry_md_read' /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/app-admin/sudo-1.9.2_rc1/work/sudo-1.9.2rc1/lib/util/.libs/libsudo_util.so: undefined reference to `gcry_md_get_algo_dlen' /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/app-admin/sudo-1.9.2_rc1/work/sudo-1.9.2rc1/lib/util/.libs/libsudo_util.so: undefined reference to `gcry_md_write' /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/app-admin/sudo-1.9.2_rc1/work/sudo-1.9.2rc1/lib/util/.libs/libsudo_util.so: undefined reference to `gcry_md_reset' /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/app-admin/sudo-1.9.2_rc1/work/sudo-1.9.2rc1/lib/util/.libs/libsudo_util.so: undefined reference to `gcry_md_open' /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/app-admin/sudo-1.9.2_rc1/work/sudo-1.9.2rc1/lib/util/.libs/libsudo_util.so: undefined reference to `gcry_md_ctl' collect2: error: ld returned 1 exit status make[1]: *** [Makefile:149: sudo_logsrvd] Error 1 sudo-1.9.1 builds fine so I suppose this is caused by a change in the build system.
Sounds like you are passing configure --enable-openssl and --enable-gcrypt. It doesn't really make sense to use both of them so sudo's configure script will now ignore --enable-gcrypt if --enable-openssl is specified. This avoids the issue. https://www.sudo.ws/repos/sudo/rev/39d493d7e549
Sudo 1.9.2rc2 is out now that includes the fix.
Thanks. That fixed the issue.