如何创建库 curl-gnutls.so.4

How to create lib curl-gnutls.so.4

所以,我是个白痴,我不小心删除了 Ubuntu 系统上的文件 libcurl-gnutls.so.4。现在我不知道如何重新创建它。我得到的实际错误是当我尝试使用 git:

git-remote-https: error while loading shared libraries: libcurl-gnutls.so.4: cannot open shared object file: No such file or directory

没错!该文件不存在。但我不知道如何创建它。我试过使用 apt-get 安装 libcurl-gnutls,虽然它说它成功了,但它没有创建库。我还下载了 curl 和 built/installed 它,但这也没有创建我需要的库。关于如何解决这个问题的任何想法?

非常感谢您的帮助。

我认为是 libcurl3-gnutls - 试一试 - sudo apt-get install libcurl3-gnutls.

我是这么想的,希望对其他人有帮助:

第 1 步:在我的机器上查找 libcurl-gnutls.so.4(Ubuntu 16.04).

ravitezu@Neutron:~$ locate libcurl-gnutls.so.4
/usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4
/usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.4.0

第 2 步:检查哪个软件包在安装时提供此文件。

ravitezu@Neutron:~$ dpkg -S /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4
libcurl3-gnutls:amd64: /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4

所以,它给了我提供那个文件的包名libcurl3-gnutls

以下是安装 libcurl3-gnutls 时将部署的文件:

ravitezu@Neutron:~$ dpkg -c libcurl3-gnutls_7.47.0-1ubuntu2_amd64.deb 
drwxr-xr-x root/root         0 2016-02-18 13:48 ./
drwxr-xr-x root/root         0 2016-02-18 13:48 ./usr/
drwxr-xr-x root/root         0 2016-02-18 13:48 ./usr/lib/
drwxr-xr-x root/root         0 2016-02-18 13:48 ./usr/lib/x86_64-linux-gnu/
-rw-r--r-- root/root    444800 2016-02-18 13:48 ./usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.4.0
drwxr-xr-x root/root         0 2016-02-18 13:48 ./usr/share/
drwxr-xr-x root/root         0 2016-02-18 13:48 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-02-18 13:48 ./usr/share/lintian/overrides/
-rw-r--r-- root/root        67 2016-01-27 17:17 ./usr/share/lintian/overrides/libcurl3-gnutls
drwxr-xr-x root/root         0 2016-02-18 13:48 ./usr/share/doc/
drwxr-xr-x root/root         0 2016-02-18 13:48 ./usr/share/doc/libcurl3-gnutls/
-rw-r--r-- root/root     10954 2016-01-27 17:17 ./usr/share/doc/libcurl3-gnutls/copyright
-rw-r--r-- root/root      1019 2016-02-18 13:48 ./usr/share/doc/libcurl3-gnutls/changelog.Debian.gz
-rw-r--r-- root/root       590 2016-01-27 17:17 ./usr/share/doc/libcurl3-gnutls/NEWS.Debian.gz
lrwxrwxrwx root/root         0 2016-02-18 13:48 ./usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4 -> libcurl-gnutls.so.4.4.0
lrwxrwxrwx root/root         0 2016-02-18 13:48 ./usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.3 -> libcurl-gnutls.so.4

出现此问题的另一个原因是您的系统只有 64 位版本的库,而程序需要 32 位版本。在这种情况下,您可能会看到类似于以下内容的错误:

error while loading shared libraries: libcurl-gnutls.so.4: wrong ELF class: ELFCLASS64

安装 32 位版本将修复它:

apt-get install libcurl3-gnutls:i386