无法加载模块::libgiognutls.so

无法加载模块::libgiognutls.so

更新 gnutls 后最后sudo apt-ger update'出现此警告

/usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so: symbol gnutls_pkcs11_privkey_init version GNUTLS_3_4 not defined in file libgnutls.so.30 with link time reference
Failed to load module: /usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so

并且在启动时系统说我的/etc/profile是错误的

ldd /usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so | grep local 
libgnutls.so.30 => /usr/local/lib/libgnutls.so.30 (0x00007fbc3b240000) 
libnettle.so.7 => /usr/local/lib/libnettle.so.7 (0x00007fbc39797000) 
libhogweed.so.5 => /usr/local/lib/libhogweed.so.5 (0x00007fbc39561000) 
cat /etc/profile | grep LD 
gpaolo@gpaolo:~$
ls /usr/local/lib
libgnutls.la liblept.so.5.0.3 libX11-xcb.a libgnutls.so libmypaint-2.0.la
libX11-xcb.la libgnutls.so.30 libmypaint-2.0.so libX11-xcb.so 
libgnutls.so.30.25.0 libmypaint-2.0.so.0 libX11-xcb.so.1 
libgnutlsxx.la libmypaint-2.0.so.0.0.0 libX11-xcb.so.1.0.0
libgnutlsxx.so libnettle.a pkgconfig libgnutlsxx.so.28

答案1

中有几个与 TLS 相关的库/usr/local/lib,在正常配置的系统中,它们不应该出现在这里。APT 会将库安装到/lib/usr/lib等等。

因此,您必须使用以下命令将相关库移动到主文件夹:

mkdir ~/wrong_libs
sudo mv /usr/local/lib/libgnutls* ~/wrong_libs/
sudo mv /usr/local/lib/libnettle.so.7 ~/wrong_libs/
sudo mv /usr/local/lib/libhogweed.so.5 ~/wrong_libs/

那么一切都会好起来。

相关内容