Mac - Macports/Wine ошибки: библиотека NCurses и Fontconfig
Я пытался установить Wine на моем Mac, чтобы запустить некоторые из моих старых компьютерных игр. Я использовал Macports для его установки, но это не сработало сразу. Я следовал этому уроку, а затем немного осмотрел в Интернете решения, но ничего не получалось.
При попытке запустить мой exe, вот что происходит:
Я вошел
wine ~/Desktop/Pokemon3D.exe
и я получаю:
Wine cannot find the ncurses library (libncurses.5.4.dylib). Fontconfig error: Cannot load default config file
(Есть еще немного, но я опубликую это в конце)
Я не уверен, что не работает, но я не могу понять это. Мы ценим любые предложения. Пожалуйста помоги!
Код ПОСЛЕ того, что выше
Pokemon:
libgluezilla не найдена. Для того, чтобы иметь поддержку WebBrowser, вам необходимо libgluezilla установлен FIXME:wincodecs:PngDecoder_Block_GetCount 0x1688848,0x32f3f8: незавершенная FIXME:wincodecs:PngDecoder_Block_GetCount 0x1687f78,0x32f3f8: незавершенная FIXME:wincodecs:PngDecoder_Block_GetCount 0x1690318,0x32ecd8: незавершенная FIXME:wincodecs:PngDecoder_Block_GetCount 0x1690b38,0x32f328: заглушки системы.NullReferenceException: ссылка на объект не установлена для экземпляра объекта в System.Windows.Forms.WebBrowser.Navigate (url System.Uri) [0x00000] в:0 at (обертка remoting-invoke-with-check) System.Windows.Forms.WebBrowser: навигация (System.Uri) в Pokémon3D.Form1.Form1_Load (отправитель System.Object, System.EventArgs e) [0x00000] в: 0 в System.Windows.Forms.Form.OnLoad (System.EventArgs e) [0x00000] в: 0 в System.Windows.Forms.Form.OnLoadInternal (System.EventArgs e) [0x00000] в: 0
Установка NeverHood:
Необработанное исключение: ошибка страницы при доступе к записи 0x000d0000 в 32-битном коде (0x4239eea6).
... а потом регистр и стек дамп
Настройка Neverhood95:
Ничего такого?!?
1 ответ
Получить ncurses 5.4 довольно сложно.
Я не смог найти никаких доказательств того, что эта версия была доступна через brew, поэтому пришлось прибегнуть к MacPorts. Я сослался на их инструкции "Установка старых портов".
Проверьте ncurses Portfile, следуйте его истории в обратном направлении, пока не найдете нужную версию.
Я искал историю вручную на GitHub.
Более автоматизированный поиск может выглядеть примерно так git log -S'5.4' -- devel/ncurses/Portfile
... хотя мне самому не повезло с этим.
Я обнаружил, что 5.4 жил на коммит bcc8e4ecb7. Клонируйте репозиторий macports git и извлеките, что зафиксировало:
git clone --single-branch https://github.com/macports/macports-ports.git
cd macports-ports
git checkout 686ea4fa0fddeb03fdf2fc04dded68e05181bc95
Теперь перейдите в папку ncurses и запустите установку порта:
cd devel/ncurses
sudo port install
Он пытается скомпилировать. К сожалению, это так далеко, как я получил. Компилятор сталкивается с ошибками - по крайней мере, с помощью набора инструментов и библиотек, которые есть в macOS Sierra.
Установка этой 12-летней версии ncurses больше не может быть простой.
РЕДАКТИРОВАТЬ: мы можем скомпилировать Apple дистрибутив источника ncurses, вместо того, чтобы использовать проект MacPorts. Смотрите эту статью.
Мы хотим (от https://opensource.apple.com/) тарбол 10.6.2 ncurses-27
, Вот ncurses-27.tar.gz
тарбол.
Построить так:
make
mkdir -p /tmp/ncurses/Build
sudo make install
Это должно создать файл libncurses.5.4.dylib
в /private/tmp/ncurses/Release/usr/lib/libncurses.5.4.dylib
,
Теперь нам нужно установить это где-нибудь. Положите его там, где вы чувствуете (я не знаю, /usr/local/lib
?) и убедитесь, что папка, в которой libncurses.5.4.dylib
живет, входит в ваш DYLD_FALLBACK_LIBRARY_PATH
,
Мол, вы можете добавить это к вашему .profile
(точнее, любой файл, который получен при запуске винного процесса):
export DYLD_FALLBACK_LIBRARY_PATH="$DYLD_FALLBACK_LIBRARY_PATH:/usr/local/lib"