如何修复synaptic package manager中状态为broken的包
在安装OMNET++的过程中利用 synaptic package manager 这个软件来管理库。通过查询发现libosgearth-dev这个库的状态为broken。如下图所示:
方法一、使用apt-get
此方法适用于库在安装完成之后被破坏的修复
运行如下所示的命令行:
sudo apt-get update --fix-missing
sudo apt-get install -f
其中-f选项是fix-broken的缩写。使用这个方法发现并不有效。转而使用第二个方法。
方法二、使用dpkg和apt-get
此方法适用于安装过程中的包损坏问题。使用如下指令:
sudo dpkg --configure -a
sudo apt-get clean
sudo apt-get update
运行如上所示的命令之后,依然报错,如下:
dpkg: error: dpkg status database is locked by another process
因为打开的synaptic软件线程调用了这个库,直接关闭synaptic软件就解决了。
如果出现lock files的提示,则在运行下列命令行之后继续运行上述步骤:
sudo rm /var/lib/apt/lists/lock
最后在synaptic软件上安装libosgearth-dev得到如下所示的mark效果:
参考链接:
https://www.rosehosting.com/blog/how-to-fix-broken-packages-on-ubuntu-16-04-and-debian-9/