升级到后Ubuntu 22.04
当我运行卷曲命令出现此错误:
/usr/bin/curl: error while loading shared libraries: libldap_r-2.4.so.2: cannot open shared object file: No such file or directory
$ which curl
/usr/bin/curl
升级之前,它运行良好。
我使用 apt 删除了 curl,然后重新安装,但仍然出现同样的错误。有办法解决这个问题吗?
问候,Saravanan
答案1
就我而言,无法运行该版本,curl --version
因为我遇到了上述错误。但是,当您卸载并再次安装 curl 时,它会显示正在安装的版本curl (7.85.0-1ubuntu0.2)
。
更新:我找到了一个解决方案,但它涉及编译源代码。您可以按照以下步骤操作:
- 按照本教程从源代码编译 open-ssl -https://linuxtect.com/how-to-install-openssl-libraries-on-ubuntu-debian-mint/
- 从 github 下载 curl 源代码 -https://github.com/curl/curl
并按照此文件中的说明进行操作 -https://github.com/curl/curl/blob/master/GIT-INFO- obs:运行
./configure --with-openssl
而不是运行./configure
后make
sudo make install
答案2
我遇到了同样的问题,发现除了 ubuntu 的默认安装外,还安装了本地 curl。
使用locate libcurl.so
libcurl.so
如果在路径中发现任何内容,/usr/local/lib
则删除它们。
一旦删除了重复的库,curl 命令就可以正常工作
答案3
我使用了多种答案来解决这个问题:
要安装缺少的库:
wget http://http.us.debian.org/debian/pool/main/o/openldap/libldap-2.4-2_2.4.47+dfsg-3+deb10u7_amd64.deb sudo apt install ./libldap-2.4-2_2.4.47+dfsg-3+deb10u7_amd64.deb
要删除 DELL 的 dca-enabler:
sudo apt-get purge --autoremove dca-enabler-packages dca-enabler