AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1212690
Accepted
Žiga Stupan
Žiga Stupan
Asked: 2020-02-25 04:53:18 +0800 CST2020-02-25 04:53:18 +0800 CST 2020-02-25 04:53:18 +0800 CST

尝试安装 python2 包时出错

  • 772

我在 Kubuntu 19.10 上,我从源代码构建了 python 3.8 并使用 checkinstall 安装了它。然后我删除了它,它以某种方式破坏了 python 2.7。如果我尝试安装任何python-*软件包,它会产生如下错误:

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 python-dev : Depends: python (= 2.7.17-1) but 3.8.1-1 is to be installed
E: Unable to correct problems, you have held broken packages.

我已经尝试过sudo dpkg --configure -a,但这无济于事。

我该如何解决?

编辑:apt-cache policy python输出:

python:
  Installed: 3.8.1-1
  Candidate: 3.8.1-1
  Version table:
 *** 3.8.1-1 100
        100 /var/lib/dpkg/status
     2.7.17-1 500
        500 http://si.archive.ubuntu.com/ubuntu eoan/universe amd64 Packages
python dpkg dependencies apt
  • 3 3 个回答
  • 1080 Views

3 个回答

  • Voted
  1. Best Answer
    Žiga Stupan
    2020-02-25T05:20:14+08:002020-02-25T05:20:14+08:00

    Python 3.8.1 以 python 名称安装,所以我所做的就是运行sudo dpkg -r python并解决了它。

    • 1
  2. Eric Mintz
    2020-02-25T05:10:48+08:002020-02-25T05:10:48+08:00

    尝试运行

    ls -lh /usr/bin/python
    

    查看您的默认 python 版本是否为 2.7。如果没有,请查看是否安装了 python 2.7 可执行文件

    ls /usr/bin/python*
    

    使您的 /usr/bin/python 链接指向正确的 python 版本

    rm /usr/bin/python
    ln -s /usr/bin/python2.7 python
    

    最后,请确保在 /usr/bin/ 中有指向 python2.7 配置文件的链接。例如,我有 /usr/bin/python2-config 指向 python2.7-config

    • 0
  3. user535733
    2020-02-25T05:29:09+08:002020-02-25T05:29:09+08:00

    当你构建你的包时,看起来你称之为'python'而不是'python3.8'。

    那是不明智的。现在系统期望“python”是 3.8 版而不是 2.7 版。

    如果您有很多不想重新安装的 Python2 包,如何解决它:

    • 预算充足的时间来做到这一点。不着急。
    • 仔细阅读你的输出。如果您在任何步骤中遇到错误,请立即停止。不要继续。
    • 这将适用于我的系统。我们不知道你对你的做了什么改变。

    1) 对您的所有数据和一个可用的 LiveUSB 进行完整备份。你将使用非常强效的药物。患者可能会出现意想不到的并发症。

    2) 确保已删除构建的 Python 3.8 包的所有痕迹。

    3) 删除python包安装的所有文件,同时保留 Python2.7 包的其余部分。

     sudo dpkg remove python --force-depends
     // 'python' places no files in /etc, so 'remove' is appropriate.
    

    python4)从您的 apt/dpkg 数据库中删除该软件包的 所有痕迹。警告:如果使用不当,此命令可能会破坏您的系统。

     sudo dpkg remove python --force-depends --force-remove-reinstreq
    

    5)重新安装正确的python包:

     sudo apt install python
    
    • 0

相关问题

  • 如何删除已卸载包的依赖项?

  • 是否可以说出我安装的哪些软件包不在原版安装中?

  • 如何删除 PPA?

  • 使用 dpkg 手动安装软件包是否会阻止未来的升级路径?

  • 使用 apt-get upgrade 时如何强制安装内核更新?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve