dpkg error: pycompile: not found

匿名 (未验证) 提交于 2019-12-03 01:00:01

问题:

sudo apt-get remove --purge mysql-server mysql-client mysql-common 

I am getting the following error as I try to remove mysql using the above command:

Reading package lists... Done Building dependency tree        Reading state information... Done Package 'mysql-client' is not installed, so not removed The following package was automatically installed and is no longer required:    php5-mysqlnd  Use 'apt-get autoremove' to remove it.  The following extra packages will be installed:    mysql-server-core-5.5 php5-mysqlnd python-aptdaemon   python-aptdaemon.gtk3widgets python3-aptdaemon python3-aptdaemon.gtk3widgets    python3-aptdaemon.pkcompat python3-uno python3-update-manager   ubuntu-drivers-common update-manager  The following packages will be REMOVED:   libdbd-mysql-perl* libmysqlclient18* mysql-client-5.5* mysql-common*   mysql-server* mysql-server-5.5* php5-mysql* phpmyadmin*  The following NEW packages will be installed:   php5-mysqlnd  The following packages will be upgraded:    mysql-server-core-5.5 python-aptdaemon python-aptdaemon.gtk3widgets    python3-aptdaemon python3-aptdaemon.gtk3widgets python3-aptdaemon.pkcompat    python3-uno python3-update-manager ubuntu-drivers-common update-manager 10 upgraded, 1 newly installed, 8 to remove and 115 not upgraded. 170 not fully installed or removed. Need to get 0 B/4,388 kB of archives. After this operation, 89.9 MB disk space will be freed. Do you want to continue? [Y/n] Y Preconfiguring packages ... (Reading database ... 354910 files and directories currently installed.) Preparing to unpack .../ubuntu-drivers-common_1%3a0.2.91.9_amd64.deb ... /var/lib/dpkg/info/ubuntu-drivers-common.prerm: 12: /var/lib/dpkg/info/ubuntu-drivers-common.prerm: py3clean: not found dpkg: warning: subprocess old pre-removal script returned error exit status 127 dpkg: trying script from the new package instead ... /var/lib/dpkg/tmp.ci/prerm: 12: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found  dpkg: error processing archive /var/cache/apt/archives/ubuntu-drivers-common_1%3a0.2.91.9_amd64.deb (--unpack):   subprocess new pre-removal script returned error exit status 127  /var/lib/dpkg/info/ubuntu-drivers-common.postinst: 6:   /var/lib/dpkg/info/ubuntu-drivers-common.postinst: py3compile: not found dpkg: error while cleaning up:   subprocess installed post-installation script returned error exit status 127  Preparing to unpack .../python3-update-manager_1%3a0.196.13_all.deb ...  /var/lib/dpkg/info/python3-update-manager.prerm: 6:   /var/lib/dpkg/info/python3-update-manager.prerm: py3clean: not found dpkg: warning: subprocess old pre-removal script returned error exit status 127  dpkg: trying script from the new package instead ...  /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found  dpkg: error processing archive /var/cache/apt/archives/python3-update-manager_1%3a0.196.13_all.deb (--unpack):   subprocess new pre-removal script returned error exit status 127  /var/lib/dpkg/info/python3-update-manager.postinst: 6:   /var/lib/dpkg/info/python3-update-manager.postinst: py3compile: not found  dpkg: error while cleaning up:  subprocess installed post-installation script returned error exit status 127  Preparing to unpack .../python3-aptdaemon.pkcompat_1.1.1-1ubuntu5.2_all.deb ...  /var/lib/dpkg/info/python3-aptdaemon.pkcompat.prerm: 6:   /var/lib/dpkg/info/python3-aptdaemon.pkcompat.prerm: py3clean: not found  dpkg: warning: subprocess old pre-removal script returned error exit status 127  dpkg: trying script from the new package instead ...  /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found  dpkg: error processing archive /var/cache/apt/archives/python3-aptdaemon.pkcompat_1.1.1-1ubuntu5.2_all.deb (--unpack):  subprocess new pre-removal script returned error exit status 127  /var/lib/dpkg/info/python3-aptdaemon.pkcompat.postinst: 6:   /var/lib/dpkg/info/python3-aptdaemon.pkcompat.postinst: py3compile: not found  dpkg: error while cleaning up:  subprocess installed post-installation script returned error exit status 127  Preparing to unpack .../python3-aptdaemon.gtk3widgets_1.1.1-1ubuntu5.2_all.deb ...  /var/lib/dpkg/info/python3-aptdaemon.gtk3widgets.prerm: 6:   /var/lib/dpkg/info/python3-aptdaemon.gtk3widgets.prerm: py3clean: not found  dpkg: warning: subprocess old pre-removal script returned error exit status 127  dpkg: trying script from the new package instead ...  /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found  dpkg: error processing archive /var/cache/apt/archives/python3-aptdaemon.gtk3widgets_1.1.1-1ubuntu5.2_all.deb (--unpack):   subprocess new pre-removal script returned error exit status 127  No apport report written because MaxReports is reached already                                                               /var/lib/dpkg/info/python3-aptdaemon.gtk3widgets.postinst: 6:   /var/lib/dpkg/info/python3-aptdaemon.gtk3widgets.postinst: py3compile: not found  dpkg: error while cleaning up:  subprocess installed post-installation script returned error exit status 127 Preparing to unpack .../python3-aptdaemon_1.1.1-1ubuntu5.2_all.deb ...  /var/lib/dpkg/info/python3-aptdaemon.prerm: 6: /var/lib/dpkg/info/python3-aptdaemon.prerm: py3clean: not found  dpkg: warning: subprocess old pre-removal script returned error exit status 127  dpkg: trying script from the new package instead ...  /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found  dpkg: error processing archive /var/cache/apt/archives/python3-aptdaemon_1.1.1-1ubuntu5.2_all.deb (--unpack):   subprocess new pre-removal script returned error exit status 127  No apport report written because MaxReports is reached already                                                               /var/lib/dpkg/info/python3-aptdaemon.postinst: 6:   /var/lib/dpkg/info/python3-aptdaemon.postinst: py3compile: not found  dpkg: error while cleaning up:   subprocess installed post-installation script returned error exit status 127  Preparing to unpack .../update-manager_1%3a0.196.13_all.deb ...  /var/lib/dpkg/info/update-manager.prerm: 6: /var/lib/dpkg/info/update-manager.prerm: py3clean: not found  dpkg: warning: subprocess old pre-removal script returned error exit status 127  dpkg: trying script from the new package instead ...  /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found  dpkg: error processing archive /var/cache/apt/archives/update-manager_1%3a0.196.13_all.deb (--unpack):   subprocess new pre-removal script returned error exit status 127  No apport report written because MaxReports is reached already                                                               /var/lib/dpkg/info/update-manager.postinst: 6: /var/lib/dpkg/info/update-manager.postinst: py3compile: not found  dpkg: error while cleaning up:  subprocess installed post-installation script returned error exit status 127  Preparing to unpack .../python-aptdaemon.gtk3widgets_1.1.1-1ubuntu5.2_all.deb ...  /var/lib/dpkg/info/python-aptdaemon.gtk3widgets.prerm: 6:   /var/lib/dpkg/info/python-aptdaemon.gtk3widgets.prerm: pyclean: not found  dpkg: warning: subprocess old pre-removal script returned error exit status 127  dpkg: trying script from the new package instead ...  /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: pyclean: not found  dpkg: error processing archive /var/cache/apt/archives/python-aptdaemon.gtk3widgets_1.1.1-1ubuntu5.2_all.deb (--unpack):   subprocess new pre-removal script returned error exit status 127  No apport report written because MaxReports is reached already                                                               /var/lib/dpkg/info/python-aptdaemon.gtk3widgets.postinst: 6:   /var/lib/dpkg/info/python-aptdaemon.gtk3widgets.postinst: pycompile: not found  dpkg: error while cleaning up:  subprocess installed post-installation script returned error exit status 127 Preparing to unpack .../python-aptdaemon_1.1.1-1ubuntu5.2_all.deb ...  /var/lib/dpkg/info/python-aptdaemon.prerm: 6: /var/lib/dpkg/info/python-aptdaemon.prerm: pyclean: not found  dpkg: warning: subprocess old pre-removal script returned error exit status 127  dpkg: trying script from the new package instead ...  /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: pyclean: not found  dpkg: error processing archive /var/cache/apt/archives/python-aptdaemon_1.1.1-1ubuntu5.2_all.deb (--unpack):   subprocess new pre-removal script returned error exit status 127 No apport report written because MaxReports is reached already                                                               /var/lib/dpkg/info/python-aptdaemon.postinst: 6:   /var/lib/dpkg/info/python-aptdaemon.postinst: pycompile: not found  dpkg: error while cleaning up:   subprocess installed post-installation script returned error exit status 127  Preparing to unpack .../python3-uno_1%3a4.2.8-0ubuntu2_amd64.deb ...  /var/lib/dpkg/info/python3-uno.prerm: 6: /var/lib/dpkg/info/python3-uno.prerm: py3clean: not found  dpkg: warning: subprocess old pre-removal script returned error exit status 127  dpkg: trying script from the new package instead ...  /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found  dpkg: error processing archive /var/cache/apt/archives/python3-uno_1%3a4.2.8-0ubuntu2_amd64.deb (--unpack):   subprocess new pre-removal script returned error exit status 127 No apport report written because MaxReports is reached already                                                               /var/lib/dpkg/info/python3-uno.postinst: 6: /var/lib/dpkg/info/python3-uno.postinst: py3compile: not found  dpkg: error while cleaning up:   subprocess installed post-installation script returned error exit status 127  Errors were encountered while processing:   /var/cache/apt/archives/ubuntu-drivers-common_1%3a0.2.91.9_amd64.deb   /var/cache/apt/archives/python3-update-manager_1%3a0.196.13_all.deb   /var/cache/apt/archives/python3-aptdaemon.pkcompat_1.1.1-1ubuntu5.2_all.deb   /var/cache/apt/archives/python3-aptdaemon.gtk3widgets_1.1.1-1ubuntu5.2_all.deb   /var/cache/apt/archives/python3-aptdaemon_1.1.1-1ubuntu5.2_all.deb   /var/cache/apt/archives/update-manager_1%3a0.196.13_all.deb   /var/cache/apt/archives/python-aptdaemon.gtk3widgets_1.1.1-1ubuntu5.2_all.deb   /var/cache/apt/archives/python-aptdaemon_1.1.1-1ubuntu5.2_all.deb   /var/cache/apt/archives/python3-uno_1%3a4.2.8-0ubuntu2_amd64.deb  E: Sub-process /usr/bin/dpkg returned an error code (1) 

How do I resolve this ?

回答1:

py3compile: not found

The py3compile command is part of python3-minimal package which seems to be broken.

To fix the issue, try the following:

  • Correct a system with broken dependencies in place by:

    sudo apt-get  -f install 
  • Reconfigure all unpacked, but unconfigured packages by:

    sudo dpkg --configure -a 
  • If above won't help, try reinstalling python3-minimal package by:

    sudo apt install -f --reinstall python3-minimal 

    Alternatively run:

    apt-get download python3-minimal sudo dpkg -i *python3*.deb sudo apt install -f 

    Or download the .pkg file from kernel.org and install from the file by:

    sudo dpkg -i python3-minimal_*.deb 

Then make sure that py3compile and py3clean commands are runnable and are accessible from your PATH variable.



回答2:

Try this:

First remove packages not more needed:

sudo apt-get autoremove 

Clears out the local repository of retrieved package files

sudo apt-get autoclean 

Remove the packages(mysql-client is not installed):

sudo apt-get remove mysql-server mysql-common 


回答3:

Despite py3compile and py3clean being present in /usr/bin/, my Lubunutu 16.10 shell (tcsh) kept complaining that py3compile was not there. After hours of frustration, I discovered that the first line in pycompile was:

! /usr/bin/env python

or something like that, which referred to Python2.7 on my system. Changing that to point to Python 3 with:

! /usr/local/bin/python3

suddenly made py3compile visible!

Turns out that the shell said py3compile did not exist even when it was in its path or was directly executed with "/usr/bin/py3compile" when py3compile referred to Python2.7. The shell did not even complain about the Python version or anything, it just claimed py3compile itself did not exist!

I got into this mess because I wanted to remove and reinstall Python 3.5, upon doing which I discovered that there is still a Python 3, which I then discovered comes from a python-minimal, which I tried to remove and reinstall. The python-minimal would not reinstall, even after I tried every thing I could find on the net and every package manager. They all would complain about py3compile missing. Now I discovered this fix for py3compile.



易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!