在安装libxml2-dev的时候出现这样的错误。
sudo apt-get install libxml2-dev
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:
下列软件包有未满足的依赖关系:
libxml2-dev : 依赖: libxml2 (= 2.9.3+dfsg1-1) 但是 2.9.3+dfsg1-1ubuntu0.5 正要被安装
依赖: libicu-dev 但是它将不会被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
在网上找了很多资料,说把错误的软件源去掉就行了。但实际情况是,我们不知道哪个有问题,因为没有哪个是不能访问的。或者根本不是软件源的问题。
后来的解决办法就是,指定版本安装。
sudo apt-get install libxml2=2.9.3+dfsg1-1
先对有冲突的包进行降级,等一切依赖冲突都解决后在安装libxml2-dev
$sudo apt-get install libxml2=2.9.3+dfsg1-1
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
下列软件包将被【降级】:
libxml2
升级了 0 个软件包,新安装了 0 个软件包,降级了 1 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 696 kB 的归档。
解压缩后将会空出 6,144 B 的空间。
您希望继续执行吗? [Y/n] y
获取:1 http://cn.archive.ubuntu.com/ubuntu xenial/main amd64 libxml2 amd64 2.9.3+dfsg1-1 [696 kB]
已下载 696 kB,耗时 6秒 (99.5 kB/s)
dpkg:警告:即将把 libxml2:amd64 从 2.9.3+dfsg1-1ubuntu0.5 降级到 2.9.3+dfsg1-1
(正在读取数据库 ... 系统当前共安装有 228392 个文件和目录。)
正准备解包 .../libxml2_2.9.3+dfsg1-1_amd64.deb ...
正在将 libxml2:amd64 (2.9.3+dfsg1-1) 解包到 (2.9.3+dfsg1-1ubuntu0.5) 上 ...
正在处理用于 libc-bin (2.23-0ubuntu10) 的触发器 ...
正在设置 libxml2:amd64 (2.9.3+dfsg1-1) ...
正在处理用于 libc-bin (2.23-0ubuntu10) 的触发器 ...