在 Ubuntu 20.04 上,尝试安装 ROS2 Galactic 需要以下包:
sudo apt install -y libpython3-dev
但是,这会返回以下内容:
某些软件包无法安装。这可能意味着您请求了一个不可能的情况,或者如果您使用的是不稳定的发行版,则某些必需的软件包尚未创建或已从传入中移出。以下信息可能有助于解决这种情况:以下软件包具有未满足的依赖关系:libpython3-dev:依赖:libpython3.8-dev(> = 3.8.2-1~)但不会安装 E:无法更正问题,您持有损坏的软件包
我尝试安装libpython3.8-dev
,但返回了未满足的依赖项
以下软件包具有未满足的依赖项:libpython3.8-dev:依赖:libexpat1-dev但不会安装推荐:libc6-dev但不会安装或libc-dev
这个链条会持续一段时间。
最终导致:
libc6-dev : Depends: libc6 (= 2.31-0ubuntu9) but 2.31-0ubuntu9.2 is to be installed
然后
libc6 is already the newest version (2.31-0ubuntu9.2).
我努力了:
- sudo apt 自动删除
- 主宇宙和多元宇宙均被选为 PPA
- sudo dpkg--configure-a
- sudo apt-get -f 安装
- sudo apt-get 自动清理
- sudo apt-get -u dist-upgrade
我觉得 apt 坏了,这是 Ubuntu 20.04 的一个相对较新的安装,所以不确定原因。我也遇到过类似的 apt 坏了的问题,最后我为了节省时间只好重新安装了 Ubuntu。但这次我想找出问题所在。任何帮助都非常感谢。
-- 输出sudo apt update
点击数:1https://brave-browser-apt-release.s3.brave.com稳定发布中点击数:2http://ca.archive.ubuntu.com/ubuntufocal 发布
点击数:3http://security.ubuntu.com/ubuntufocal-security 发布中
点击数:4http://archive.canonical.com/ubuntufocus 发布
热度:5http://packages.ros.org/ros2/ubuntufocal InRelease 正在读取软件包列表...完成 正在构建依赖关系树
正在读取状态信息...完成 所有软件包都是最新的。
答案1
经过一番寻找,我终于找到了问题所在,这要归功于这个问题。
看来 libc6-dev 需要 libc6 的旧版本。因此我运行:
sudo apt install libc6=2.31-0ubuntu9 libc-bin=2.31-0ubuntu9
降级 libc6,问题就解决了。不确定这是否是一个长期解决方案,但现在似乎有效。
谢谢