1 votes

Python 3 ne fonctionne pas

J'ai récemment installé Python 3.5 à partir de la source, mais je pense que j'ai fait quelque chose de mal pendant l'installation ou la liaison. Après cela, j'ai des problèmes pour installer n'importe quel paquet Ubuntu. Par exemple, add-apt-repository ne fonctionne pas, même après avoir réinstallé software-properties-common.

$ add-apt-repository 
bash: /usr/bin/add-apt-repository: /usr/bin/python3: bad interpreter: No such file or directory

De plus, apt-get install me donne cette erreur

$ sudo apt-get install libraw-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  libraw-dev
0 upgraded, 1 newly installed, 0 to remove and 229 not upgraded.
3 not fully installed or removed.
Need to get 382 kB/391 kB of archives.
After this operation, 1,588 kB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu/ trusty/main libraw-dev amd64 0.15.4-1 [382 kB]
Fetched 382 kB in 0s (651 kB/s)    
Selecting previously unselected package libraw-dev:amd64.
(Reading database ... 295477 files and directories currently installed.)
Preparing to unpack .../libraw-dev_0.15.4-1_amd64.deb ...
Unpacking libraw-dev:amd64 (0.15.4-1) ...
Setting up python3.4 (3.4.3-1ubuntu1~14.04.5) ...
Could not find platform independent libraries <prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'
Aborted
dpkg: error processing package python3.4 (--configure):
 subprocess installed post-installation script returned error exit status 134
Setting up python3-commandnotfound (0.3ubuntu12) ...
/var/lib/dpkg/info/python3-commandnotfound.postinst: 6: /var/lib/dpkg/info/python3-commandnotfound.postinst: py3compile: not found
dpkg: error processing package python3-commandnotfound (--configure):
 subprocess installed post-installation script returned error exit status 127
dpkg: error processing package software-properties-common (--configure):
 package is in a very bad inconsistent state; you should
 reinstall it before attempting configuration
Setting up libraw-dev:amd64 (0.15.4-1) ...
Errors were encountered while processing:
 python3.4
 python3-commandnotfound
 software-properties-common
E: Sub-process /usr/bin/dpkg returned an error code (1)

De plus, en essayant d'ajouter le ppa, on obtient l'erreur suivante

$ sudo add-apt-repository ppa:dhor/myway
sudo: unable to execute /usr/bin/add-apt-repository: No such file or directory

Qu'est-ce qui se passe, des idées ?

1voto

David Foerster Points 34353
  1. Tout d'abord, vous devez restaurer le noyau de Python 3 :

    sudo apt install -f --reinstall python3 python3.4 python3-minimal python3.4-minimal libpython3.4-minimal

    Si cela ne fonctionne pas à cause de paquets semi-installés dépendant de Python 3, téléchargez et installez-les manuellement :

    cd /tmp
    apt-get download python3 python3.4 python3-minimal python3.4-minimal libpython3.4-minimal
    sudo dpkg -i *python3*.deb
    sudo apt install -f
  2. Installer le debsums et effectuer un vérification de l'intégrité des paquets pour vérifier l'intégrité des paquets restants et les réinstaller si nécessaire.

0voto

jcgoble3 Points 143

Ubuntu est livré avec ses propres installations de Python, dont il dépend pour que les utilitaires du système fonctionnent. Ces utilitaires s'appuient sur python , python2 y python3 pointant vers ces installations du système. Malheureusement, lors de la construction ou de l'installation de Python à partir des sources, le fichier standard make install installe de nouvelles python / python2 (pour Python 2.x) ou python3 (pour Python 3.x), qui peuvent finir par faire de l'ombre aux installations Python du système et casser des choses.

Une fois que votre système est réparé (la réponse de David devrait vous permettre d'avancer sur ce point), votre Python compilé à partir des sources devrait être (ré)installé avec make altinstall qui renonce à python3 et d'installer l'interpréteur seulement comme la version spécifique de python3.5 . C'est le moyen le plus sûr d'installer votre propre Python sans interférer avec les Pythons du système, car il ne masquera aucune des commandes utilisées par les utilitaires du système.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X