加载共享库时出错:libQtSql.so.4:无法打开共享对象文件:没有此文件或目录

加载共享库时出错:libQtSql.so.4:无法打开共享对象文件:没有此文件或目录

在其他地方也发现了类似的问题,但仅限于 32 位程序。

我在尝试运行 64 位的 clementine 时遇到了这个问题,我检查了我拥有的二进制文件 - 和 ubuntu-one-control-panel-qt

我开始觉得我已经尝试了一切。有没有办法将我的 qt 安装恢复到某种默认状态?

我认为这可能是在我使用“sudo apt-get remove rhythmbox”卸载 Rhythmbox 后发生的。不过,我后来重新安装了 rhythmbox,并认为任何已删除的依赖项都会用 apt 重新安装……

编辑:这是我的 apt 历史记录: https://gist.github.com/2646562

第 215 行是我第一次安装 Clementine 时的情况。此时它显然还在运行。删除第 305 行的 Rhythmbox 似乎没有造成太大损害。然而,这正是它停止运行的时刻,因为日志的其余部分大部分都是我试图修复 Clementine。

再重复一遍:我认为我的安装中没有任何 Qt 应用可以运行。我即将研究如何完全删除并重新安装 Qt,看看这是否是一条有希望的途径。

答案1

在全新安装的 Ubuntu 13.10 GNOME x64 上安装 Time Doctor(不是从 repos 安装)时我遇到了同样的问题。

您的评论促使我进行调查并这样做:

sudo apt-get install libqt4-sql
sudo apt-get install libqt4-gui

此后错误不再发生。

答案2

rhythmbox包是该包的依赖项ubuntu-desktop,用于确保您拥有基本的桌面组件。

如果您强制删除 Rhythmbox,则也会强制删除ubuntu-desktop,这可能会导致其他一些关键桌面组件被删除。重新安装 Rhythmbox 不会恢复完成第一个操作所需删除的其他软件包。

您可能能够通过ubuntu-desktop使用以下命令重新安装来解决问题:

sudo apt-get install ubuntu-desktop

如果这没有帮助,请提供更多有关您在系统正常运行和停止运行之间对系统所做的更改的信息。

相关内容