Résolvez-le par ceci :
cd /usr/lib/python3/dist-packages
cp apt_pkg.cpython-34m-i386-linux-gnu.so apt_pkg.so
Ou :
cd /usr/lib/python3/dist-packages
cp apt_pkg.cpython-35m-x86_64-linux-gnu.so apt_pkg.so
En gros, si vous obtenez un No such file or directory
juste ls
pour essayer d'obtenir le bon nom.
J'ai rencontré ce problème en faisant sudo apt-get update
. Mon env est debian8, avec python2.7 + 3.4 (par défaut) + 3.5.
Le code suivant ne recréera qu'un apt_pkg....so
fichier pour python 3.5
sudo apt-get install python3-apt --reinstall
Le code suivant a résolu mon problème,
cd /usr/lib/python3/dist-packages
sudo ln -s apt_pkg.cpython-{your-version-number}-x86_64-linux-gnu.so apt_pkg.so
Remplacer {your-version-number}
de manière appropriée.
ATTENTION , ce qui suit créera un lien symbolique de apt_pkg37m à apt_pkg36m. assurez-vous que vous créez un lien vers la bonne version, ou au moins vers une version existante par ll apt_pkg.cpython-*
, et voyez lesquels vous avez installés.
sudo ln -s apt_pkg.cpython-{36m,37m}-x86_64-linux-gnu.so
Donc, évidemment, python3-apt vérifie la version de python la plus élevée, au lieu de la version de python actuellement utilisée.
Pour comprendre pourquoi cela se produit, consultez cette réponse plus bas :https://stackoverflow.com/a/64241654/21539