3

Я не могу запустить Wine, любая версия на моем Ubuntu 16.04. Дело не в том, что я не могу запустить конкретную программу с вином, а в том, что я вообще не могу запустить вино. Каждый запуск вина дает сбой, выдавая мне эту ошибку:

wine: Unhandled stack overflow at address 0xXXXXX (thread XXXX), starting debugger...
err :seh:setup_exception_record stack overflow 1200 bytes in thread 0011 eip 7bc62f8d esp 00240e80 stack 0x240000-0x241000-0x3400000

Единственная рабочая программа - winetricks, и я не могу использовать ее для запуска winecfg или чего-то еще: каждый раз получаю эту ошибку.

Я попытался с Wine2.0, wine1.8, 1.6, попытался удалить папку .wine или префикс wine, но как только это было сделано, я даже не могу wineboot воссоздать его.

Что я могу сделать, чтобы это исправить?

1 ответ1

2

Нашел это. На самом деле, не только Wine, но и множество программ (LeafPad, LxAppearance и некоторые другие) вызывали ошибку сегментации и сбой.

Таким образом, я использовал strace для расследования ошибки и обнаружил, что эти приложения после сбоя пытались загрузить файлы значков курсора, которые не существовали.

И хотя я установил несколько тем курсора примерно неделю назад (тема Breeze, вместо Adwaita Theme), в те дни это не сработало, и я просто перестал заботиться об этом (поскольку я использую i3 в качестве оконного менеджера и изменить общее графическое поведение i3 немного сложно).

Очевидно, что изменение курсора было учтено только после третьего или четвертого соединения после переключения. И когда загруженная "глючная" тема курсора вместо того, чтобы вернуться к стандартной теме курсора X11 (или Adwaita), когда указанная иконка не может быть найдена, она создала какое-то дерьмо "вне пределов памяти".

Проблема исправлена удалением, а затем повторной установкой, должным образом, темы Breeze (и я также установил много из них). Установка тем на эту систему осуществляется следующим образом:

  • Копирование всех тем в отдельные папки, в ~/.icons/
  • Удаление всех символических ссылок в папках тем, используя find -type l -delete среди них
  • Создайте символическую ссылку для каждой из ваших папок тем, чтобы они также отображались в /usr /share /icons так же, как в ~/.icons
  • Переключение темы с помощью lxappearance (если вы ранее не удаляли символические ссылки, то здесь вы получите информацию об ошибках сегментации почти в каждой программе). В этот момент все курсоры будут отключены, потому что ссылки отсутствуют.
  • Восстановите все символические ссылки, которые вы удалили на шаге 2, снова извлекая их из архива темы, например.

Затем перезагрузите компьютер. Как только тема успешно загружена и понята LxAppearance, ошибки ошибки сегментации больше никогда не повторяются.

Также вы можете заметить, что некоторые темы (например, AdWaita) поддерживают включение с помощью LXA, несмотря на то, что в них есть символические ссылки, в то время как некоторые другие (например, Breeze и его варианты) этого не делают и должны повторять эти операции. каждый раз.

Ах, Linux и графические интерфейсы. Говорите все, что хотите о нестабильности Windows, но я никогда не видел общих сбоев системы, вызванных отсутствующим файлом значка курсора.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .