Vyřešte to takto:
cd /usr/lib/python3/dist-packages
cp apt_pkg.cpython-34m-i386-linux-gnu.so apt_pkg.so
Nebo:
cd /usr/lib/python3/dist-packages
cp apt_pkg.cpython-35m-x86_64-linux-gnu.so apt_pkg.so
V zásadě, pokud získáte No such file or directory
stačí ls
pokusit se získat správné jméno.
S tímto problémem jsem se setkal při provádění sudo apt-get update
. Moje env je debian8 s python2.7 + 3.4 (výchozí) + 3.5.
Následující kód pouze znovu vytvoří apt_pkg....so
soubor pro python 3.5
sudo apt-get install python3-apt --reinstall
Následující kód vyřešil můj problém,
cd /usr/lib/python3/dist-packages
sudo ln -s apt_pkg.cpython-{your-version-number}-x86_64-linux-gnu.so apt_pkg.so
Nahraďte {your-version-number}
přiměřeně.
POZOR , následující vytvoří symbolický odkaz z apt_pkg37m na apt_pkg36m. ujistěte se, že odkazujete na správnou nebo alespoň na existující verzi podle ll apt_pkg.cpython-*
a podívejte se, které z nich jste nainstalovali.
sudo ln -s apt_pkg.cpython-{36m,37m}-x86_64-linux-gnu.so
Je tedy zřejmé, že python3-apt kontroluje nejvyšší verzi pythonu namísto aktuální používané verze pythonu.
Chcete-li pochopit, proč se to děje, podívejte se na tuto odpověď níže:https://stackoverflow.com/a/64241654/21539