1. 问题描述
博主在ubuntu1804上安装sqlite3时,安装失败,且提示依赖关系未满足,见下图:
错误提示:
下列软件包有未满足的依赖关系:
sqlite3 : 依赖: libsqlite3-0 (= 3.22.0-1) 但是 3.22.0-1ubuntu0.6 正要被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
2. 博主尝试的方法(未成功,可跳过不看)
2.1 根据提示尝试安装最新版libsqlite3-0
如下图所示,键入 apt-get install libsqlite3-0
后,提示目前安装的已经是最新版了。注意版本号:3.22.0-1ubuntu0.6
2.2 在网上搜索后,尝试安装libsqlite3-dev
操作见下图,执行完apt-get install libsqlite3-dev
后,问题依然没解决。
3. 问题产生的原因
其实问题原因,系统已经给提示过了,如上图红框所示。
从系统给出的错误信息来看,系统里的 libsqlite3-0 版本是
3.22.0-1ubuntu0.6
,但是,sqlite3 包所依赖的版本是3.22.0-1
,即,存在冲突,这属于典型的依赖版本不兼容问题。
4. 解决办法
第一步:强制安装指定版本的 libsqlite3-0
sudo apt-get install libsqlite3-0=3.22.0-1
第二步:锁定版本,防止自动升级
echo "libsqlite3-0 hold" | sudo dpkg --set-selections
第三步:安装 sqlite3
sudo apt-get install sqlite3
5. 查看是否安装成功
sqlite3 --version
执行结果: