/usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: не удается открыть общий объектный файл: Нет такого файла или каталога

Вопрос или проблема

Я пытаюсь установить pip на WSL Ubuntu 18.04.2 LTS. Когда я пытаюсь, установка python3-crypto завершается неудачей:

Настройка python3-crypto (2.6.1-8ubuntu2) ...
/usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога

После этой ошибки всё заканчивается неудачей, и python3 также поврежден. Библиотека есть в системе:

$ locate libexpat.so.1
/lib/x86_64-linux-gnu/libexpat.so.1
/lib/x86_64-linux-gnu/libexpat.so.1.6.7

Я использую Python 3.6.7. Команда python3 также вызывает ошибку.

$ python3
python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога

Когда я запускаю pip3, я получаю:

Команда 'pip3' не найдена, но её можно установить с помощью:

Я пытался установить её с помощью APT:

$ sudo apt-get install python3-pip
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение состояния информации... Готово
Следующий пакет был автоматически установлен и больше не требуется:
  libfreetype6
Используйте 'sudo apt autoremove', чтобы удалить его.
Следующие дополнительные пакеты будут установлены:
  binutils binutils-common binutils-x86-64-linux-gnu build-essential cpp cpp-7 dh-python dpkg-dev fakeroot g++ g++-7
  gcc gcc-7 gcc-7-base gcc-8-base libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libasan4
  libatomic1 libbinutils libc-dev-bin libc6-dev libcc1-0 libcilkrts5 libdpkg-perl libexpat1 libexpat1-dev libfakeroot
  libfile-fcntllock-perl libgcc-7-dev libgcc1 libgomp1 libisl19 libitm1 liblsan0 libmpc3 libmpx2 libpython3-dev
  libpython3.6 libpython3.6-dev libpython3.6-minimal libpython3.6-stdlib libquadmath0 libssl1.1 libstdc++-7-dev
  libstdc++6 libtsan0 libubsan0 linux-libc-dev make manpages-dev python-pip-whl python3-crypto python3-dev
  python3-distutils python3-keyring python3-keyrings.alt python3-lib2to3 python3-secretstorage python3-setuptools
  python3-wheel python3-xdg python3.6 python3.6-dev python3.6-minimal
Предложенные пакеты:
  binutils-doc cpp-doc gcc-7-locales debian-keyring g++-multilib g++-7-multilib gcc-7-doc libstdc++6-7-dbg
  gcc-multilib autoconf automake libtool flex bison gdb gcc-doc gcc-7-multilib libgcc1-dbg libgomp1-dbg libitm1-dbg
  libatomic1-dbg libasan4-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg libcilkrts5-dbg libmpx2-dbg libquadmath0-dbg
  glibc-doc bzr libstdc++-7-doc make-doc python-crypto-doc gnome-keyring libkf5wallet-bin gir1.2-gnomekeyring-1.0
  python-secretstorage-doc python-setuptools-doc python3.6-venv python3.6-doc binfmt-support
Следующие новые пакеты будут установлены:
  binutils binutils-common binutils-x86-64-linux-gnu build-essential cpp cpp-7 dh-python dpkg-dev fakeroot g++ g++-7
  gcc gcc-7 gcc-7-base libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libasan4 libatomic1
  libbinutils libc-dev-bin libc6-dev libcc1-0 libcilkrts5 libdpkg-perl libexpat1-dev libfakeroot
  libfile-fcntllock-perl libgcc-7-dev libgomp1 libisl19 libitm1 liblsan0 libmpc3 libmpx2 libpython3-dev
  libpython3.6-dev libquadmath0 libstdc++-7-dev libtsan0 libubsan0 linux-libc-dev make manpages-dev python-pip-whl
  python3-crypto python3-dev python3-distutils python3-keyring python3-keyrings.alt python3-lib2to3 python3-pip
  python3-secretstorage python3-setuptools python3-wheel python3-xdg python3.6-dev
Следующие пакеты будут обновлены:
  gcc-8-base libexpat1 libgcc1 libpython3.6 libpython3.6-minimal libpython3.6-stdlib libssl1.1 libstdc++6 python3.6
  python3.6-minimal
10 обновлено, 57 новых установлено, 0 удалено и 110 не обновлено.
Необходимо загрузить 92.7 МБ архивов.
После этой операции будет использовано 248 МБ дополнительного дискового пространства.
Хотите продолжить? [Y/n]
Настройка libquadmath0:amd64 (8.3.0-6ubuntu1~18.04.1) ...
Настройка libgomp1:amd64 (8.3.0-6ubuntu1~18.04.1) ...
Настройка libatomic1:amd64 (8.3.0-6ubuntu1~18.04.1) ...
Настройка python-pip-whl (9.0.1-2.3~ubuntu1.18.04.1) ...
Настройка libexpat1:amd64 (2.2.5-3ubuntu0.2) ...
Настройка libcc1-0:amd64 (8.3.0-6ubuntu1~18.04.1) ...
Настройка make (4.1-9.1ubuntu1) ...
Обработка триггеров для mime-support (3.60ubuntu1) ...
Настройка python3-crypto (2.6.1-8ubuntu2) ...
/usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3-crypto (--configure):
 сценарий постустановки установленного пакета python3-crypto завершился с ошибкой выполнения 127
Настройка libtsan0:amd64 (8.3.0-6ubuntu1~18.04.1) ...
Настройка python3-xdg (0.25-4ubuntu1) ...
/usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3-xdg (--configure):
 сценарий постустановки установленного пакета python3-xdg завершился с ошибкой выполнения 127
dpkg: проблемы с зависимостями препятствуют настройке python3-keyrings.alt:
 python3-keyrings.alt зависит от python3-crypto; однако:
  Пакет python3-crypto ещё не настроен.

dpkg: ошибка при обработке пакета python3-keyrings.alt (--configure):
 проблемы с зависимостями - оставляя несоответствующим
Настройка linux-libc-dev:amd64 (4.15.0-65.74) ...
Настройка libdpkg-perl (1.19.0.5ubuntu2.3) ...
Настройка python3-wheel (0.30.0-0.2) ...
Нет отчета apport, так как сообщение об ошибке указывает, что это последующая ошибка предыдущей неудачи.
/usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3-wheel (--configure):
 сценарий постустановки установленного пакета python3-wheel завершился с ошибкой выполнения 127
Настройка liblsan0:amd64 (8.3.0-6ubuntu1~18.04.1) ...
Настройка gcc-7-base:amd64 (7.4.0-1ubuntu1~18.04.1) ...
Настройка binutils-common:amd64 (2.30-21ubuntu1~18.04.2) ...
Нет отчета apport, так как MaxReports уже достигнут
Настройка libfile-fcntllock-perl (0.22-3build2) ...
Настройка libmpx2:amd64 (8.3.0-6ubuntu1~18.04.1) ...
Обработка триггеров для libc-bin (2.27-3ubuntu1) ...
Настройка libssl1.1:amd64 (1.1.1-1ubuntu2.1~18.04.4) ...
Проверка на наличие служб, которые могут нуждаться в перезапуске... готово.
Проверка на наличие служб, которые могут нуждаться в перезапуске... готово.
Проверка сценариев инициализации...

Перезапуск служб, которые могут быть затронуты обновлением:
invoke-rc.d: не удалось определить текущий уровень выполнения

Службы успешно перезапущены.

Настройка libfakeroot:amd64 (1.22-2ubuntu1) ...
Настройка libalgorithm-diff-perl (1.19.03-1) ...
Обработка триггеров для man-db (2.8.3-2ubuntu0.1) ...
Настройка libmpc3:amd64 (1.1.0-1) ...
Настройка libc-dev-bin (2.27-3ubuntu1) ...
Настройка python3-lib2to3 (3.6.8-1~18.04) ...
/usr/bin/python3.6: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3-lib2to3 (--configure):
 сценарий постустановки установленного пакета python3-lib2to3 завершился с ошибкой выполнения 127
Нет отчета apport, так как MaxReports уже достигнут
Настройка python3-secretstorage (2.3.1-2) ...
/usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3-secretstorage (--configure):
 сценарий постустановки установленного пакета python3-secretstorage завершился с ошибкой выполнения 127
Нет отчета apport, так как MaxReports уже достигнут
Настройка manpages-dev (4.15-1) ...
Настройка libc6-dev:amd64 (2.27-3ubuntu1) ...
dpkg: проблемы с зависимостями препятствуют настройке python3-distutils:
 python3-distutils зависит от python3-lib2to3 (>= 3.6.4); однако:
  Пакет python3-lib2to3 ещё не настроен.

dpkg: ошибка при обработке пакета python3-distutils (--configure):
 проблемы с зависимостями - оставляя несоответствующим
Настройка libitm1:amd64 (8.3.0-6ubuntu1~18.04.1) ...
Нет отчета apport, так как MaxReports уже достигнут
Настройка libisl19:amd64 (0.19-1) ...
Настройка libasan4:amd64 (7.4.0-1ubuntu1~18.04.1) ...
dpkg: проблемы с зависимостями препятствуют настройке python3-keyring:
 python3-keyring зависит от python3-secretstorage; однако:
  Пакет python3-secretstorage ещё не настроен.

dpkg: ошибка при обработке пакета python3-keyring (--configure):
 проблемы с зависимостями - оставляя несоответствующим
Настройка libbinutils:amd64 (2.30-21ubuntu1~18.04.2) ...
Нет отчета apport, так как MaxReports уже достигнут
Настройка libcilkrts5:amd64 (7.4.0-1ubuntu1~18.04.1) ...
Настройка libubsan0:amd64 (7.4.0-1ubuntu1~18.04.1) ...
dpkg: проблемы с зависимостями препятствуют настройке python3-dev:
 python3-dev зависит от python3-distutils (>= 3.6.7-1~); однако:
  Пакет python3-distutils ещё не настроен.

dpkg: ошибка при обработке пакета python3-dev (--configure):
 проблемы с зависимостями - оставляя несоответствующим
Настройка fakeroot (1.22-2ubuntu1) ...
Нет отчета apport, так как MaxReports уже достигнут
update-alternatives: использование /usr/bin/fakeroot-sysv для предоставления /usr/bin/fakeroot (fakeroot) в автоматическом режиме
Настройка libgcc-7-dev:amd64 (7.4.0-1ubuntu1~18.04.1) ...
Настройка cpp-7 (7.4.0-1ubuntu1~18.04.1) ...
Настройка libstdc++-7-dev:amd64 (7.4.0-1ubuntu1~18.04.1) ...
Настройка libpython3.6-minimal:amd64 (3.6.8-1~18.04.3) ...
Настройка libalgorithm-merge-perl (0.08-3) ...
Настройка libalgorithm-diff-xs-perl (0.04-5) ...
dpkg: проблемы с зависимостями препятствуют настройке python3-pip:
 python3-pip зависит от python3-distutils; однако:
  Пакет python3-distutils ещё не настроен.

dpkg: ошибка при обработке пакета python3-pip (--configure):
 проблемы с зависимостями - оставляя несоответствующим
Настройка libexpat1-dev:amd64 (2.2.5-3ubuntu0.2) ...
Нет отчета apport, так как MaxReports уже достигнут
dpkg: проблемы с зависимостями препятствуют настройке python3-setuptools:
 python3-setuptools зависит от python3-distutils; однако:
  Пакет python3-distutils ещё не настроен.

dpkg: ошибка при обработке пакета python3-setuptools (--configure):
 проблемы с зависимостями - оставляя несоответствующим
dpkg: проблемы с зависимостями препятствуют настройке dh-python:
 dh-python зависит от python3-distutils; однако:
  Пакет python3-distutils ещё не настроен.

dpkg: ошибка при обработке пакета dh-python (--configure):
 проблемы с зависимостями - оставляя несоответствующим
Нет отчета apport, так как MaxReports уже достигнут
Нет отчета apport, так как MaxReports уже достигнут
Настройка binutils-x86-64-linux-gnu (2.30-21ubuntu1~18.04.2) ...
Настройка cpp (4:7.4.0-1ubuntu2.3) ...
Настройка libpython3.6-stdlib:amd64 (3.6.8-1~18.04.3) ...
Настройка python3.6-minimal (3.6.8-1~18.04.3) ...
/usr/bin/python3.6: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3.6-minimal (--configure):
 сценарий постустановки установленного пакета python3.6-minimal завершился с ошибкой выполнения 127
Нет отчета apport, так как MaxReports уже достигнут
Настройка binutils (2.30-21ubuntu1~18.04.2) ...
Настройка libpython3.6:amd64 (3.6.8-1~18.04.3) ...
dpkg: проблемы с зависимостями препятствуют настройке python3.6:
 python3.6 зависит от python3.6-minimal (= 3.6.8-1~18.04.3); однако:
  Пакет python3.6-minimal ещё не настроен.

dpkg: ошибка при обработке пакета python3.6 (--configure):
 проблемы с зависимостями - оставляя несоответствующим
Настройка gcc-7 (7.4.0-1ubuntu1~18.04.1) ...
Нет отчета apport, так как MaxReports уже достигнут
Настройка g++-7 (7.4.0-1ubuntu1~18.04.1) ...
Настройка gcc (4:7.4.0-1ubuntu2.3) ...
Настройка libpython3.6-dev:amd64 (3.6.8-1~18.04.3) ...
Настройка dpkg-dev (1.19.0.5ubuntu2.3) ...
Настройка g++ (4:7.4.0-1ubuntu2.3) ...
update-alternatives: использование /usr/bin/g++ для предоставления /usr/bin/c++ (c++) в автоматическом режиме
dpkg: проблемы с зависимостями препятствуют настройке python3.6-dev:
 python3.6-dev зависит от python3.6 (= 3.6.8-1~18.04.3); однако:
  Пакет python3.6 ещё не настроен.

dpkg: ошибка при обработке пакета python3.6-dev (--configure):
 проблемы с зависимостями - оставляя несоответствующим
Настройка libpython3-dev:amd64 (3.6.7-1~18.04) ...
Нет отчета apport, так как MaxReports уже достигнут
Настройка build-essential (12.4ubuntu1) ...
Обработка триггеров для libc-bin (2.27-3ubuntu1) ...
Произошли ошибки при обработке:
 python3-crypto
 python3-xdg
 python3-keyrings.alt
 python3-wheel
 python3-lib2to3
 python3-secretstorage
 python3-distutils
 python3-keyring
 python3-dev
 python3-pip
 python3-setuptools
 dh-python
 python3.6-minimal
 python3.6
 python3.6-dev
E: Подпроцесс /usr/bin/dpkg вернул код ошибки (1)

Вывод sudo dpkg --configure -a:

Настройка python3-crypto (2.6.1-8ubuntu2) ...
/usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3-crypto (--configure):
 сценарий постустановки установленного пакета python3-crypto завершился с ошибкой выполнения 127
Настройка python3-xdg (0.25-4ubuntu1) ...
/usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3-xdg (--configure):
 сценарий постустановки установленного пакета python3-xdg завершился с ошибкой выполнения 127
dpkg: проблемы с зависимостями препятствуют настройке python3-keyrings.alt:
 python3-keyrings.alt зависит от python3-crypto; однако:
  Пакет python3-crypto ещё не настроен.

dpkg: ошибка при обработке пакета python3-keyrings.alt (--configure):
 проблемы с зависимостями - оставляя несоответствующим
Настройка python3.6-minimal (3.6.8-1~18.04.3) ...
/usr/bin/python3.6: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3.6-minimal (--configure):
 сценарий постустановки установленного пакета python3.6-minimal завершился с ошибкой выполнения 127
Настройка python3-wheel (0.30.0-0.2) ...
/usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3-wheel (--configure):
 сценарий постустановки установленного пакета python3-wheel завершился с ошибкой выполнения 127
Настройка python3-lib2to3 (3.6.8-1~18.04) ...
/usr/bin/python3.6: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3-lib2to3 (--configure):
 сценарий постустановки установленного пакета python3-lib2to3 завершился с ошибкой выполнения 127
Настройка python3-secretstorage (2.3.1-2) ...
/usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога
dpkg: ошибка при обработке пакета python3-secretstorage (--configure):
 сценарий постустановки установленного пакета python3-secretstorage завершился с ошибкой выполнения 127
dpkg: проблемы с зависимостями препятствуют настройке python3-distutils:
 python3-distutils зависит от python3-lib2to3 (>= 3.6.4); однако:
  Пакет python3-lib2to3 ещё не настроен.

dpkg: ошибка при обработке пакета python3-distutils (--configure):
 проблемы с зависимостями - оставляя несоответствующим
dpkg: проблемы с зависимостями препятствуют настройке python3.6:
 python3.6 зависит от python3.6-minimal (= 3.6.8-1~18.04.3); однако:
  Пакет python3.6-minimal ещё не настроен.

dpkg: ошибка при обработке пакета python3.6 (--configure):
 проблемы с зависимостями - оставляя несоответствующим
dpkg: проблемы с зависимостями препятствуют настройке python3-keyring:
 python3-keyring зависит от python3-secretstorage; однако:
  Пакет python3-secretstorage ещё не настроен.

dpkg: ошибка при обработке пакета python3-keyring (--configure):
 проблемы с зависимостями - оставляя несоответствующим
dpkg: проблемы с зависимостями препятствуют настройке python3-dev:
 python3-dev зависит от python3-distutils (>= 3.6.7-1~); однако:
  Пакет python3-distutils ещё не настроен.

dpkg: ошибка при обработке пакета python3-dev (--configure):
 проблемы с зависимостями - оставляя несоответствующим
dpkg: проблемы с зависимостями препятствуют настройке python3-pip:
 python3-pip зависит от python3-distutils; однако:
  Пакет python3-distutils ещё не настроен.

dpkg: ошибка при обработке пакета python3-pip (--configure):
 проблемы с зависимостями - оставляя несоответствующим
dpkg: проблемы с зависимостями препятствуют настройке python3-setuptools:
 python3-setuptools зависит от python3-distutils; однако:
  Пакет python3-distutils ещё не настроен.

dpkg: ошибка при обработке пакета python3-setuptools (--configure):
 проблемы с зависимостями - оставляя несоответствующим
dpkg: проблемы с зависимостями препятствуют настройке python3.6-dev:
 python3.6-dev зависит от python3.6 (= 3.6.8-1~18.04.3); однако:
  Пакет python3.6 ещё не настроен.

dpkg: ошибка при обработке пакета python3.6-dev (--configure):
 проблемы с зависимостями - оставляя несоответствующим
dpkg: проблемы с зависимостями препятствуют настройке dh-python:
 dh-python зависит от python3-distutils; однако:
  Пакет python3-distutils ещё не настроен.

dpkg: ошибка при обработке пакета dh-python (--configure):
 проблемы с зависимостями - оставляя несоответствующим
Произошли ошибки при обработке:
 python3-crypto
 python3-xdg
 python3-keyrings.alt
 python3.6-minimal
 python3-wheel
 python3-lib2to3
 python3-secretstorage
 python3-distutils
 python3.6
 python3-keyring
 python3-dev
 python3-pip
 python3-setuptools
 python3.6-dev
 dh-python

Как я могу установить pip3 на WSL Ubuntu?

Пакет python3-pip ломает систему для WSL, что-то не так. Я установил pip, используя python3:

Я получил ошибку при запуске “python3 get-pip.py” без python3-distutils, поэтому сначала он установлен

sudo apt-get install python3-distutils
curl hppts://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 --user get-pip.py

Похоже, pip был успешно установлен.

$ pip --version
pip 19.3 из /usr/local/lib/python3.6/dist-packages/pip (python 3.6)

Ответ или решение

Ошибка, которую вы получаете: /usr/bin/python3: ошибка при загрузке общих библиотек: libexpat.so.1: невозможно открыть общий объектный файл: Нет такого файла или каталога, указывает на отсутствие или повреждение библиотеки libexpat.so.1, необходимой для работы Python 3.

Анализ проблемы

  1. Система: Вы используете WSL (Windows Subsystem for Linux) на Ubuntu 18.04.2 LTS.
  2. Состояние Python: Поскольку Python 3.6 не может загрузить нужные библиотеки, это приводит к сбоям при выполнении команд, таких как pip3 и даже python3.
  3. Проблемы с зависимостями: Из вывода dpkg видно, что многие пакеты Python не могут быть настроены из-за отсутствия libexpat.so.1. Это вызвало каскадные сбои из-за зависимостей между пакетами.

Решение

Для того, чтобы устранить данную проблему, выполните следующие шаги:

1. Проверка наличия библиотеки

Основное, что необходимо сделать — это проверить, установлена ли библиотека libexpat1. Выполните команду:

dpkg -l | grep libexpat1

Если она отсутствует, установите её:

sudo apt-get update
sudo apt-get install libexpat1

2. Переустановка Python 3 и необходимых компонентов

Если библиотека уже установлена, возможно, требуется переустановка пакетов Python и их зависимостей. Для этого выполните следующие команды:

sudo apt-get remove --purge python3 python3-crypto python3-pip
sudo apt-get autoremove
sudo apt-get install python3 python3-pip python3-crypto

Эти команды удалят Python и его пакеты, а затем установят их заново.

3. Установка pip через get-pip.py

Если вы всё ещё не можете установить pip3 обычным способом, используйте скрипт get-pip.py:

sudo apt-get install python3-distutils    # Установите необходимые зависимости
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py

Данный способ позволит вам установить pip, если основные зависимости и библиотеки установлены.

4. Проверка установки pip

После завершения всех шагов проверьте, установлен ли pip и работает ли он:

pip3 --version

Если вернётся версия, то установка прошла успешно.

Заключение

Подход к устранению данной проблемы требует поэтапной проверки состояний пакетов и их зависимостей. Если все вышеперечисленные шаги не принесли успеха, возможно, стоит рассмотреть полное переустановку WSL или использование другой версии Ubuntu внутри WSL.

Этот метод не только устранит временные проблемы, но и обеспечит вам чистую среду для разработки. Не забывайте выполнять резервное копирование важных данных перед выполнением критических операций, чтобы избежать потери информации.

Оцените материал
Добавить комментарий

Капча загружается...