python-dev安装错误:ImportError: No module named apt_pkg

新手上路,请多包涵

我是 Debian 用户,我想安装 python-dev,但是当我以 root 身份在 shell 中运行代码时:

 # aptitude install python-dev

我收到以下错误:

 Traceback (most recent call last):
  File "/usr/bin/apt-listchanges", line 28, in <module>
    import apt_pkg
ImportError: No module named apt_pkg

似乎是什么问题,我该如何解决?

原文由 Belphegor 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 915
2 个回答

确保你有一个可以工作的 python-apt 包。您可以尝试删除并再次安装该软件包以解决无法找到 apt_pkg.so 的问题。

 apt-get install python-apt

原文由 Arnestig 发布,翻译遵循 CC BY-SA 3.0 许可协议

我在做 sudo apt-get update 时遇到了这个问题。我的环境是 debian8,python2.7 + 3.4(默认)+ 3.5。

以下代码只会为 python 3.5 重新创建一个 apt_pkg....so 文件

sudo apt-get install python3-apt --reinstall

下面的代码解决了我的问题,

 cd /usr/lib/python3/dist-packages

为系统上安装的 python 版本找到合适的 .so 文件:

 ls -l | grep apt_pkg

创建符号链接:

 sudo ln -s apt_pkg.cpython-{your-version-number}-x86_64-linux-gnu.so apt_pkg.so

适当替换 {your-version-number}

注意,下面将创建一个从 apt_pkg37m 到 apt_pkg36m 的符号链接。确保您通过 ls apt_pkg.cpython-* 链接到正确的版本,或者至少链接到现有版本,然后查看您安装了哪些版本。

 sudo ln -s apt_pkg.cpython-{36m,37m}-x86_64-linux-gnu.so

因此,很明显,python3-apt 检查最高的 python 版本,而不是当前使用的 python 版本。

要了解为什么会发生这种情况,请进一步查看此答案: https ://stackoverflow.com/a/64241654/21539

原文由 zhazha 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题