これで解決します:
cd /usr/lib/python3/dist-packages
cp apt_pkg.cpython-34m-i386-linux-gnu.so apt_pkg.so
または:
cd /usr/lib/python3/dist-packages
cp apt_pkg.cpython-35m-x86_64-linux-gnu.so apt_pkg.so
基本的に、 No such file or directory
を取得した場合 ちょうど ls
正しい名前を取得しようとします。
sudo apt-get update
を実行しているときにこの問題に遭遇しました .私の環境は debian8 で、python2.7 + 3.4(デフォルト) + 3.5 です。
次のコードは apt_pkg....so
のみを再作成します Python 3.5 用のファイル
sudo apt-get install python3-apt --reinstall
次のコードで問題が解決しました。
cd /usr/lib/python3/dist-packages
sudo ln -s apt_pkg.cpython-{your-version-number}-x86_64-linux-gnu.so apt_pkg.so
{your-version-number}
を置き換えます
注意 、以下は apt_pkg37m から apt_pkg36m へのシンボリックリンクを作成します。 正しいバージョン、または少なくとも既存のバージョンにリンクしていることを確認してください ll apt_pkg.cpython-*
まで 、インストールしたものを確認してください。
sudo ln -s apt_pkg.cpython-{36m,37m}-x86_64-linux-gnu.so
したがって、明らかに、python3-apt は、現在使用されている python バージョンではなく、最も高い python バージョンをチェックします。
なぜこれが起こっているのかを理解するには、次の回答を参照してください:https://stackoverflow.com/a/64241654/21539