更新 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/
那么一切都会好起来。