![CouchDB 未满足的依赖项 couchdb-bin(>= 1.6.1-0ubuntu5)- 包含损坏的软件包](https://linux22.com/image/1053294/CouchDB%20%E6%9C%AA%E6%BB%A1%E8%B6%B3%E7%9A%84%E4%BE%9D%E8%B5%96%E9%A1%B9%20couchdb-bin%EF%BC%88%3E%3D%201.6.1-0ubuntu5%EF%BC%89-%20%E5%8C%85%E5%90%AB%E6%8D%9F%E5%9D%8F%E7%9A%84%E8%BD%AF%E4%BB%B6%E5%8C%85.png)
从根目录,
我使用以下命令在服务器上卸载了 CouchDB:
sudo apt-get purge couchdb
使用以下命令在服务器上安装 CouchDB:
sudo apt-get install couchdb -y
我收到错误:
某些软件包无法安装。这可能意味着您请求了一个不可能的情况,或者如果您使用的是不稳定的发行版,则某些必需的软件包尚未创建或已从 Incoming 中移出。以下信息可能有助于解决这种情况:
以下软件包具有未满足的依赖项。couchdb:依赖:couchdb-bin(>= 1.6.1-0ubuntu5)但是它将不会被安装 E:无法纠正问题,您持有损坏的软件包。
因此,我尝试了:
sudo apt-get clean
sudo apt-get install -f
sudo dpkg --configure -a
sudo apt-get update
然后,
sudo apt-get remove couchdb couchdb-bin couchdb-common -f
sudo apt-get install python-software-properties
sudo apt-add-repository ppa:couchdb/stable
sudo apt-get update
sudo apt-get install couchdb couchdb-bin couchdb-common -f
我收到错误:
以下软件包具有未满足的依赖项。couchdb-bin:依赖:erlang-abi-15.b E:无法纠正问题,您持有损坏的软件包。
我试过,
sudo apt-get remove erlang-abi-15.b
我收到错误:
无法删除“erlang-abi-15.b”等虚拟包
所以我这么做了:
sudo apt-get install erlang-abi-15.b
我收到错误:
软件包 erlang-abi-15.b 是由以下软件包提供的虚拟软件包:erlang-base-hipe 1:17.3 [非候选版本] erlang-base 1:17.4 [非候选版本] erlang-base 1:17.1 [非候选版本] erlang-base-hipe 1:17.3.2 [非候选版本] erlang-base 1:17.3 [非候选版本] erlang-base-hipe 1:17.1 [非候选版本] erlang-base-hipe 1:17.4 [非候选版本] erlang-base 1:17.3.2 [非候选版本] erlang-base-hipe 1:16.b.3-dfsg-1ubuntu2.1 [非候选版本] erlang-base 1:16.b.3-dfsg-1ubuntu2.1 [非候选版本] erlang-base-hipe 1:16.b.3-dfsg-1ubuntu2 [非候选版本] erlang-base 1:16.b.3-dfsg-1ubuntu2 [非候选版本]
E:软件包‘erlang-abi-15.b’没有安装候选项
所以我尝试:
sudo apt-get update && sudo apt-get install -f
然后尝试再次安装couchDB
sudo apt-get update
sudo apt-get install software-properties-common -y
sudo add-apt-repository ppa:couchdb/stable -y
sudo apt-get update
sudo apt-get remove couchdb couchdb-bin couchdb-common -yf
sudo apt-get install couchdb -y
我遇到了同样的错误:
某些软件包无法安装。这可能意味着您请求了一个不可能的情况,或者如果您使用的是不稳定的发行版,则某些必需的软件包尚未创建或已从 Incoming 中移出。以下信息可能有助于解决这种情况:
以下软件包具有未满足的依赖关系。couchdb:依赖:couchdb-bin(>= 1.6.1-0ubuntu5)但不会安装
我正在运行 Erlang 版本 18(最新版本)。
我不知道还能做什么,如果能得到帮助就太好了。我想我已经尽可能彻底地处理了这个问题。
答案1
显然,最新版本的 erlang-base(1:18.1)不包含虚拟包 erlang-abi-15.b。
如果你使用aptitude
安装过couchdb,它可以提供解决这个问题的方法,即将erlang降级到1:17.4。尽管你必须拒绝它的第一个建议(即不做任何事情)。
这是我运行的输出sudo aptitude install couchdb
:
$ sudo aptitude 安装 couchdb 将会安装以下新软件包: couchdb couchdb-bin{ab} couchdb-common{a} erlang-eunit{a} erlang-os-mon{a} erlang-snmp{a} erlang-tools{a} erlang-webtool{a} erlang-xmerl{a} libmozjs185-1.0{a} 升级了 0 个软件包,新安装了 10 个,删除了 0 个,并且未升级 0 个。 需要获取 8,256 kB 的档案。解压后将使用 22.1 MB。 以下软件包具有未满足的依赖关系: couchdb-bin:依赖:erlang-abi-15.b,它是一个虚拟包。 以下操作将解决这些依赖关系: 保留以下软件包的当前版本: 1)couchdb [未安装] 2)couchdb-bin [未安装] 接受这个解决方案吗?[Y/n/q/?] n 以下操作将解决这些依赖关系: 安装以下软件包: 1)erlang-eunit [1:17.4()] 2)erlang-os-mon [1:17.4()] 3)erlang-snmp [1:17.4()] 4)erlang工具[1:17.4()] 5)erlang-webtool [1:17.4()] 6)erlang-xmerl [1:17.4()] 降级以下软件包: 7)erlang-asn1 [1:18.1(,现在)-> 1:17.4()] 8) erlang-base [1:18.1 (,现在) -> 1:17.4 ()] 9) erlang-crypto [1:18.1 (,现在) -> 1:17.4 ()] 10) erlang-inets [1:18.1(,现在) -> 1:17.4()] 11) erlang-mnesia [1:18.1 (, 现在) -> 1:17.4 ()] 12)erlang-public-key [1:18.1(,现在)-> 1:17.4()] 13) erlang-runtime-tools [1:18.1(,现在) -> 1:17.4()] 14) erlang-ssl [1:18.1 (, 现在) -> 1:17.4 ()] 15) erlang-syntax-tools [1:18.1 (,现在) -> 1:17.4 ()] 保留以下依赖关系未解决: 16)erlang-base 推荐 erlang-crypto(= 1:17.4) 接受这个解决方案吗?[Y/n/q/?] y 以下软件包将被降级: erlang-asn1 erlang-base erlang-crypto erlang-inets erlang-mnesia erlang-公钥 erlang-运行时工具 erlang-ssl erlang-语法工具 将会安装以下新软件包: couchdb couchdb-bin{a} couchdb-common{a} erlang-eunit{a} erlang-os-mon{a} erlang-snmp{a} erlang-tools{a} erlang-webtool{a} erlang-xmerl{a} libmozjs185-1.0{a} 升级了 0 个软件包,新安装了 10 个,降级了 9 个,删除了 0 个,并且未升级 0 个。 需要获取 19.1 MB 的档案。解压后将使用 21.5 MB。 您想继续吗?[Y/n/?] y
更新:我已经举报这个错误到 Ubuntu。
答案2
erlang-base
冲突与是否手动安装有关。如果您删除了couchdb和erlang的所有痕迹,然后安装couchdb,它应该可以工作。
大致步骤如下:
$ apt-get remove couchdb couchdb-bin erlang-base erlang-base-hipe erlang-solutions
$ apt-get install couchdb
这样做之后,erlang-base将不会被安装,而一堆其他erlang包将安装在版本1:16.b.3。
$ dpkg --list | grep erlang
ii erlang-asn1 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP modules for ASN.1 support
rc erlang-base 1:18.1 amd64 Erlang/OTP virtual machine and base applications
ii erlang-base-hipe 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP HiPE enabled virtual machine and base applications
ii erlang-crypto 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP cryptographic modules
ii erlang-eunit 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP module for unit testing
ii erlang-inets 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP Internet clients and servers
ii erlang-mnesia 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP distributed relational/object hybrid database
ii erlang-os-mon 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP operating system monitor
ii erlang-public-key 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP public key infrastructure
ii erlang-runtime-tools 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP runtime tracing/debugging tools
ii erlang-snmp 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP SNMP applications
rc erlang-solutions 1.0 all A package to add repository.
ii erlang-ssl 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP implementation of SSL
ii erlang-syntax-tools 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP modules for handling abstract Erlang syntax trees
ii erlang-tools 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP various tools
ii erlang-webtool 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP helper for web-based tools
ii erlang-xmerl 1:16.b.3-dfsg-1ubuntu2.1 amd64 Erlang/OTP XML tools