162 votes

erreur d'installation de python-dev : ImportError : Aucun module nommé apt_pkg

Je suis un utilisateur Debian, et je veux installer python-dev, mais lorsque j'exécute le code dans le shell en tant que Root :

# aptitude install python-dev

Je reçois l'erreur suivante :

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

Quel semble être le problème et comment puis-je le résoudre ?

7voto

Jamie Pate Points 470

Pour une raison quelconque, mon installation a été manquée apt_pkg.so dans le répertoire des paquets de distribution de python3 ( apt_pkg.cpython-33m-x86_64-linux-gnu.so était là ? !) mais et j'ai dû faire un lien symbolique apt_pkg.so -> apt_pkg.cpython-33m-x86_64-linux-gnu.so sur /usr/lib/python3/dist-packages

Je ne sais pas si ma mise à jour était cassée ou pourquoi c'était le cas. Cela s'est produit après avoir essayé d'effectuer une mise à niveau (précision->raring->mise à niveau quantique).

5voto

Tong Niu Points 31

Le dernier recours est sudo cp /usr/lib/python3/dist-packages/apt_pkg.cpython-35m-x86_64-linux-gnu.so /usr/lib/python3/dist-packages/apt_pkg.cpython-36m-x86_64-linux-gnu.so si le ln est trop difficile pour vous ou ne fonctionne pas comme par magie.

cp ci-dessus peut également être mv si vous ne souhaitez utiliser qu'une seule version de Python.

4voto

GigaWatts Points 63

Je suis sur Ubuntu 16.04, et j'ai mis à jour vers Python 3.7. Voici l'erreur que j'ai eue en essayant d'ajouter un PPA

    sudo add-apt-repository ppa:ubuntu-toolchain-r/test                                           
Traceback (most recent call last):
  File "/usr/bin/add-apt-repository", line 11, in <module>
    from softwareproperties.SoftwareProperties import SoftwareProperties, shortcut_handler
  File "/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py", line 27, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'

J'ai pu corriger cette erreur en créant un lien symbolique avec mon python 3.4 initial. apt_pkg.cpython-34m-x86_64-linux-gnu.so en créant le lien symbolique suivant

sudo ln -s apt_pkg.cpython-34m-x86_64-linux-gnu.so apt_pkg.so

3voto

Pobe Points 1297

Si vous utilisez python 3.5, passez à la version 3.4. C'est la mesure la plus sûre à prendre.

Sous /usr/lib/python3/dist-packages vous verrez *34m* que python 3.5 ne peut pas utiliser. zhazha y répond par un lien symbolique.

3voto

Jihwan Park Points 61

En plus de créer un lien symbolique pour apt_pkg.so vous pouvez faire apt_inst.so de la même manière que apt_pkg.so .

ln -s apt_inst.cpython-35m-x86_64-linux-gnu.so apt_inst.so

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X