Как исправить ошибку «Не удалось загрузить подключаемый модуль« Внешние инструменты ». Произошла ошибка: загрузчик подключаемого модуля« python 3 »не найден)» в GEdit?

Я использую GEdit версии 3.36.2 с предустановленной Ubuntu 20.04.1. Я хотел включить плагин External Tools в GEdit, но не могу.

Когда я нажимаю на опцию Внешние инструменты , я получаю символ ⛔.

Gedit preferences

Когда я закрываю GEdit и снова открываю его, эта опция отключается.

Gedit preferences

Если я его включу, я снова получу тот же символ ⛔.

Как исправить эту проблему?


Редактировать 1:
gir1.2-gtksource-3.0 не был установлен, когда я задал этот вопрос. После предложения Джокердино в общей комнате Ask Ubuntu я установил gir1.2-gtksource-3.0 с помощью этой команды: sudo apt install gir1.2-gtksource-3.0 .

Я заметил сообщение об ошибке после установки gir1.2-gtksource-3.0 .

Error message in gedit

Не удалось загрузить подключаемый модуль «Внешние инструменты»
Произошла ошибка: Загрузчик подключаемого модуля «python 3» не был найден

Я не уверен, смогу ли я увидеть это сообщение об ошибке перед установкой gir1. 2-gtksource-3.0 . Возможно, я не поместил указатель мыши на символ (в течение нескольких секунд) в первый раз, когда заметил этот символ, или, может быть, это могло быть по какой-то другой причине. Я не знаю.

Джокердино предложил мне открыть gedit из терминала и проверить, не возникла ли у меня какая-либо конкретная ошибка при включении внешних инструментов. Я получил ошибку в терминале.

** (gedit:14693): WARNING **: 20:21:59.976: Error initializing Python Plugin Loader: PyGObject initialization failed
ImportError: could not import gobject (error was: ModuleNotFoundError("No module named 'gi'"))

** (gedit:14693): WARNING **: 20:21:59.976: Please check the installation of all the Python related packages required by libpeas and try again

(gedit:14693): libpeas-WARNING **: 20:21:59.976: Loader 'python3' is not a valid PeasPluginLoader instance

Думаю, Python 3.8.2 был предустановлен вместе с моей установкой Ubuntu. Я хотел перейти на Python 3.8.3. Поэтому я выполнил инструкции, приведенные на этом веб-сайте . Установите Python 3.8.3 в Ubuntu 20.04 LTS - TechPiezo .
В конце статьи были даны два предложения. Во-первых, заменить (или перезаписать) уже установленную версию Python 3.8.2; во-вторых, установить Python v3.8.3 вместе с Python v3.8.2. Я последовал первому варианту.

2
задан 10 August 2020 в 15:29

1 ответ

Вы должны и должны выполнить откат к версии Python по умолчанию, т.е. 3.8.2 в 20.04, так как есть некоторые библиотеки, которые требуются для некоторых пакетов, установленных в системе только для версии Python по умолчанию, которая могут быть недоступны или несовместимы с другими версиями. Поскольку вы установили Python 3.8.3 из исходного кода, файлы были скопированы в /usr/local/ и /usr/local/bin/python3, созданная символическая ссылка, также известная как , символическая ссылка или программная ссылка /usr/local/bin/python3.8.

значение по умолчанию для PATH содержит /usr/local/bin перед /usr/bin, поэтому ему присваивается приоритет и причина вызова Python 3.8.3 вместо 3.8.2 всякий раз, когда вызывается python3 или python3.8 (поскольку Python по умолчанию установлен в /usr/bin) .

Возврат к python3 по умолчанию не займет у вас много времени. У вас есть 3 варианта возврата.

  1. Удаление символической ссылки: Просто удалите /usr/local/bin/python3. Да это оно.

  2. Воссоздайте символическую ссылку: Вы можете сделать так, чтобы /usr/local/bin/python3 указывал на /usr/bin/python3.8 или /usr/ bin/python3 (который уже является символической ссылкой на /usr/bin/python3.8 согласно вашему сообщению в общей комнате).

    Чтобы воссоздать символическую ссылку, используйте ln с параметрами s и f, т.е.

    sudo ln -sf /usr/bin/python3.8 /usr/local/bin/python3 # Вы можете заменить /usr/bin/python3.8 на /usr/bin/python3, как описано выше.
    
  3. Присвоение /usr/bin приоритета (избыточное): отредактируйте /etc/environment и поместите /usr/bin перед / usr/местный/bin.

    Внимание!!! Вы должны обращаться с /etc/environment с осторожностью. Не трогайте и не делайте ничего, если вы не знаете, что делаете.

    В качестве альтернативы вы можете поместить PATH="/usr/bin:$PATH" в /.profile.

    После этого выйдите из системы и войдите снова, чтобы изменения вступили в силу.

Поскольку вы установили Python 3.8.3 из исходного кода, вам необходимо удалить файлы вручную, поскольку Python не предоставляет опцию удаления для make. Чтобы удалить их, выполните:

# From /usr/local/bin
cd /usr/local/bin
sudo rm 2to3 2to3-3.8 easy_install-3.8 idle3 idle3.8 pip3 pip3.8 pydoc3 pydoc3.8 python3 python3.8 python3.8-config python3-config
# From /usr/local/include
sudo rm -r /usr/local/include/python3.8
# From /usr/local/lib
cd /usr/local/lib
sudo rm -r libpython3.8.a pkgconfig python3.8
# From /usr/local/man/man1
cd /usr/local/man/man1
sudo rm -r python3.1 python3.8.1
# From /usr/local/share/man/man1
cd /usr/local/share/man/man1
sudo rm -r python3.1 python3.8.1
2
ответ дан 5 September 2020 в 17:24

Другие вопросы по тегам:

Похожие вопросы: