我正在尝试安装 npm 并找到了这个解决方案。我跑aptitude install npm
了,建议的解决方案是
The following packages have unmet dependencies:
libssl-dev : Depends: libssl1.1 (= 1.1.1f-1ubuntu2)
but 1.1.1g-1+ubuntu18.04.1+deb.sury.org+1 is installed
Keep the following packages at their current version:
1) libnode-dev [Not Installed]
2) libssl-dev [Not Installed]
3) node-gyp [Not Installed]
4) npm [Not Installed]
Accept this solution? [Y/n/q/?]
它基本上是在建议降级,但是如果我将 libssl1.1 降级到 libssl1.0 会对我的系统产生什么影响?
编辑:将 Ubuntu 18.04 升级到 20.04 后出现此问题。Dan Scally的解决方案有效,我还在启动板的评论中提供了另一个选项,其中针对我的特定情况提供了更详细的信息。
这是一个依赖问题
由于
npm
依赖于 node-gyp,它依赖于 libnode-dev,它依赖于 libssl-dev,这就是问题所在,这libssl-dev
取决于libssl1.1 versoin 1.1.1f-1ubuntu2
您是否拥有较新的版本libssl1.1 version 1.1.1g-1+ubuntu18.04.1+deb.sury.org+1
因此,作为解决方法,您可以按照Dan Scally的建议从 g 降级到 f 如下
然后你应该可以安装 npm
它和我一起工作没有问题。
看起来您通过 PPA 而不是通常的 Ubuntu 源安装了 libssl。如果你这样做
apt search --names-only libssl
应该确认。建议是从 g 降级到 f,而不是从 1.1 降级到 1.0:这些版本之间的更改在此处列出,在我看来相当小:您是否愿意接受 npm 的降级功能取决于您。