Ubuntu 20.04 - Curl:符号查找错误

blu*_*ren 3 libraries curl 20.04

我在笔记本电脑上安装了新版本的 ubuntu。发布后,为了将其设置为与我的桌面相同,我做了一个 apt 克隆并安装

# Take a backup of the entire apt repo using apt-clone
    sudo apt-clone clone "$BACKUP_DIR"/apt-clone-"$(date +%Y%m%dT%H.%M.%S)".tar.gz
# Get a dump of Dconf settings
    dconf dump / >"$BACKUP_DIR"/dconf_settings.dconf

# Restore
# Do a restore
    DEBIAN_FRONTEND=noninteractive sudo apt-clone restore "$BACKUP_DIR"/apt-clone*tar.gz

#reload the dconf
    dconf load / <"$BACKUP_DIR"/dconf_settings.dconf


Run Code Online (Sandbox Code Playgroud)

一切似乎都很顺利。但是,当我运行curl时,出现以下错误:

curl: symbol lookup error: curl: undefined symbol: curl_url_set, version CURL_OPENSSL_4
Run Code Online (Sandbox Code Playgroud)

我在 SO/ask ubuntu 中查找了问题并运行了以下命令:

$ sudo ldd $(which curl) | grep libcurl

    libcurl.so.4 => /usr/lib/dcaenabler/libcurl.so.4 (0x00....)

Run Code Online (Sandbox Code Playgroud)
$ ls -ltr /usr/lib/dcaenabler/libcurl*

-rw-r--r-- 1 root root 518600 Jan 29  2021 /usr/lib/dcaenabler/libcurl.so.4.5.0
lrwxrwxrwx 1 root root     16 Aug 15 21:15 /usr/lib/dcaenabler/libcurl.so.4 -> libcurl.so.4.5.0
Run Code Online (Sandbox Code Playgroud)

我删除了软链接并替换为中存在的 libcurl.so.4/usr/lib/x86_64-linux-gnu

$ sudo ln -s /usr/lib/x86_64-linux-gnu/libcurl.so.4 /usr/lib/dcaenabler/                                                                                                                                                             
Run Code Online (Sandbox Code Playgroud)

此后 Curl 开始正常工作。

然而

这似乎无法在重新启动后幸存。如果我出于某种原因逃跑,它也无法生存ldconfig

我该如何永久解决这个问题?

小智 7

Dell DCA 启用程序包会导致此问题。要修复系统,我们需要通过运行来删除它们

sudo apt-get purge --autoremove dca-enabler-packages dca-enabler
Run Code Online (Sandbox Code Playgroud)