我正在尝试使用 gpg 注册一个密钥,以便使用 aptitude 升级我的 debian 系统。系统是 Debian 4.0 32 位。
不幸的是,我遇到了错误。这是我尝试的:
gpg --keyserver pgp.mit.edu --recv-keys [KEY]
错误:
error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory
gpg: requesting key 473041FA from hkp server pgp.mit.edu
gpg: no handler for keyserver scheme `hkp'
gpg: keyserver receive failed: keyserver error
搜索 libcurl.so.4 我发现:
/src/curl/curl-7.16.4/lib/.libs/libcurl.so.4
/src/curl/curl-7.16.4/lib/.libs/libcurl.so.4.0.0
/usr/local/lib/libcurl.so.4
/usr/local/lib/libcurl.so.4.0.0
编辑:
/etc/ld.so.conf 只有一个条目:
include /etc/ld.so.conf.d/*.conf
ls -la /usr/local/lib/libcurl*
返回
-rw-r--r-- 1 root staff 5231754 2007-07-19 21:46 /usr/local/lib/libcurl.a
-rwxr-xr-x 1 root staff 828 2007-07-19 21:46 /usr/local/lib/libcurl.la
lrwxrwxrwx 1 root staff 16 2007-07-19 21:46 /usr/local/lib/libcurl.so -> libcurl.so.4.0.0
lrwxrwxrwx 1 root staff 16 2007-07-19 21:46 /usr/local/lib/libcurl.so.4 -> libcurl.so.4.0.0
-rwxr-xr-x 1 root staff 2512584 2007-07-19 21:46 /usr/local/lib/libcurl.so.4.0.0
答案1
/src 文件夹是什么?/usr/local 中的 lib 是什么?
看来这个安装严重搞砸了。
因此,最简单的选择似乎是:如果您已经想升级系统,请使用 squeeze 或 wheezy 进行全新安装。不要混合手动安装的库和包管理器安装的库。
另一种方法是使用 来修复您的安装aptitude
。这个很难说。
确保您的 sources.list 包含正确的条目,如有必要,升级您的系统或重新安装软件包。
据我回忆,不建议使用 pgp.mit.edu x-hkp://sks.pkqs.net
。看看http://sks.pkqs.net:11371/
答案2
您安装了冲突版本的 libcurl。这种情况通常发生在您手动编译 curl 并在那里获得 libcurl 形式,而 apt 会下载另一个 libcurl 形式的存储库,因为它不知道手动编译。
要解决这个问题,您需要删除其中一个 libcurl。通过 apt 卸载或从所有环境变量中删除源编译的 libcurl 的路径。