Не удается использовать apt: libstdc ++. So.6: версия `GLIBCXX_3.4.20 'не найдена - proUbuntu
1 голос
/

Когда я использую apt, у меня возникают проблемы:

$ sudo apt-get update
apt-get: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by apt-get) apt-get: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0)

Однако, установка новых подходящих выходов:

dpkg: regarding .../apt_1.2.10ubuntu1_amd64.deb containing apt:
apt breaks apt-utils (<< 1.1.3)
apt-utils (version 1.0.1ubuntu2) is present and installed.

dpkg: error processing archive /home/anawasreh/Downloads/apt_1.2.10ubuntu1_amd64.deb (--install):
 installing apt would break apt-utils, and
 deconfiguration is not permitted (--auto-deconfigure might help)
Errors were encountered while processing:
 /home/anawasreh/Downloads/apt_1.2.10ubuntu1_amd64.deb
(13:13:21)anawasreh@readonly@anawasreh(-)

Даже если я попытаюсь загрузить отсутствующую библиотеку:

$ sudo apt-get install libstdc++6

apt-get: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version
`GLIBCXX_3.4.20' not found (required by apt-get) apt-get:
/usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not
found (required by /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0)

Так что я застрял там и вообще не могу удалить, обновить или исправить apt.

Ответы [ 3 ]

3 голосов
/

Вы можете скопировать libstdc++.so.6 из другой установки Ubuntu.

В виртуальной машине 14.04 я удалил libstdc++.so.6 и получил ту же ошибку, что и вы. Затем я скопировал его с моего хоста 16.04, и apt снова заработал. Вы можете использовать Live CD для этого.

В качестве альтернативы, загрузите нужный файл для вашей версии:

14.04 : https://bsre.stackstorage.com/index.php/s/JVNxNO3HWBA4HSa
16.04 : https://bsre.stackstorage.com/index.php/s/L394ttygh55cR1W

Затем откройте окно терминала, используя Cntrl + Alt + T

  1. Введите cd ~/Downloads и нажмите enter
  2. Введите md5sum libstdc++* и нажмите enter
  3. Убедитесь, что вы видите одно из следующего:

    aa688ac2f4c90a023c2cbd1dd21d4ccc libstdc++1404.so.6 68dbd855c3213cae1a41375c25bf6884 libstdc++1604.so.6

  4. Затем переименуйте файл, используя sudo mv libstdc++* libstdc++.so.6
  5. Переместить файл: sudo mv libstdc++.so.6 /usr/lib/x86_64-linux-gnu/
0 голосов
/

У меня тоже раньше была такая же проблема. Я исправил это, загрузив пакет libstdc ++ 6 debian из здесь , а затем выполнил ручную установку с использованием 'dpkg'

sudo dpkg -i libstdc++6_5.4.0-6ubuntu1~16.04.1_i386.deb

После этого все работало нормально

0 голосов
/

Это было немного сложно, я не помню, что именно я делал, когда у меня была эта проблема.

Может быть, это может помочь:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update

Это может не работать, если у вас не установлены свойства программного обеспечения python.

Итак, попробуйте обновить ваши репозитории и PPA по умолчанию. перейдите по этой ссылке, чтобы узнать, как это сделать: Как восстановить репозитории по умолчанию?

...