Слияние не запускается на Cygwin :Нет модуля с именем «слияние»

Я не могу найти ссылку прямо сейчас, но я полагаю, что многое из этого взято из Moby Project Грэди Уорда

-1
20.09.2021, 15:39
2 ответа

кажется, что meld жестко закодирован в python3.6

https://cygwin.com/packages/x86_64/meld/meld-3.18.0-1

Но по умолчанию указано 3.8

$ alternatives --display python3
python3 - status is auto.
 link currently points to /usr/bin/python3.8
/usr/bin/python3.8 - priority 38
/usr/bin/python3.6 - priority 36
/usr/bin/python3.7 - priority 37
Current `best' version is /usr/bin/python3.8.

Попробуйте установить значение 3,6

$ alternatives --config python3

There are 3 programs which provide 'python3'.

  Selection    Command
-----------------------------------------------
*+ 1           /usr/bin/python3.8
   2           /usr/bin/python3.6
   3           /usr/bin/python3.7

Enter to keep the current selection[+], or type selection number: 2

и снова протестируйте слияние

3
21.09.2021, 17:21

Как указывает @matzeri, кажется, что meld жестко -закодирован для python 3.6 -, в то время как Cygwin64 по состоянию на сентябрь 2021 года использует Python 3.8 в качестве альтернативы по умолчанию для python3.

Теперь я не хочу менять настройки по умолчанию для всех приложений, но -мы все еще можем обязать сам процесс объединения вручную:

  1. Копировать /usr/bin/meldв/usr/local/bin/meld
  2. В /usr/local/bin/meldзаменить:
#!/usr/bin/python3

с:

#!/usr/bin/python3.6

это, по крайней мере, решит проблему отсутствия модуля -, хотя вы можете столкнуться с другими проблемами .

Помните, что у вас есть локальная версия, которую нужно удалить/обновить при следующем обновлении самого объединения!


Изменить:Если вы столкнулись с этой проблемой в другом дистрибутиве Linux, прямая проблема заключается в том, что подкаталог meld не найден в пути поиска пакетов python. Итак, предположим, что meld запускается версией Python N.M, вы, вероятно, пропустите

/usr/lib/pythonN.M/site-packages/meld/

или подкаталог слияния в том месте, где python хранит свои «пакеты сайта -». Иногда это можно решить с помощью жесткого -объединения кодов для использования другой версии Python -, но только если эта версия имеет соответствующую папку пакетов -на сайте объединения. В противном случае вам потребуется переустановить или установить meld вручную, убедившись, что подкаталог установлен на место.

2
21.09.2021, 17:43

Теги

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