我在 Ubuntu 14.04.3 32 位平台上。我想编译 opencv,它需要 libavcodec-dev。我想安装它,但它需要一长串的软件包。如果我只需单击一下即可安装它们,那就很容易了。不幸的是,我现在遇到了软件包冲突。因为我过去安装了 libavcodec-extra-54,但它与 libavcodec54 不兼容,而 libavcodec54 是 libavcodec-dev 所需的软件包之一。我天真地试图删除 libavcodec-extra-54,但它列出了数十个要删除的应用程序。
据我所知,从 libavcodec54 切换到 libavcodec-extra-54 时我遇到了同样的问题,但我不记得以前是如何安装 libavcodec-extra-54 的。
我现在需要知道如何恢复它,但我现在不记得了。我希望有人知道如何处理我遇到的情况。
答案1
删除包libavcodec-extra-54
sudo dpkg -r --force-all libavcodec-extra-54
下载并安装libavcodec54
apt-get download libavcodec54
sudo dpkg -i libavcodec54_*.deb
可以肯定的是,运行
apt-cache policy libavcodec54 libavcodec-extra-54
你现在应该看到类似这样的内容
libavcodec54:
Installed: 6:9.18-0ubuntu0.14.04.1
Candidate: 6:9.18-0ubuntu0.14.04.1
Version table:
*** 6:9.18-0ubuntu0.14.04.1 0
500 http://archive.ubuntu.com/ubuntu/ trusty-security/universe i386 Packages
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/universe i386 Packages
100 /var/lib/dpkg/status
6:9.11-2ubuntu2 0
500 http://archive.ubuntu.com/ubuntu/ trusty/universe i386 Packages
libavcodec-extra-54:
Installed: (none)
Candidate: 6:9.18-0ubuntu0.14.04.1
Version table:
7:1.2.6-1~trusty1 0
100 /var/lib/dpkg/status
6:9.18-0ubuntu0.14.04.1 0
500 http://archive.ubuntu.com/ubuntu/ trusty-security/universe i386 Packages
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/universe i386 Packages
6:9.11-2ubuntu2 0
500 http://archive.ubuntu.com/ubuntu/ trusty/universe i386 Packages