Mac - Erros Macports / Wine: biblioteca NCurses e Fontconfig

0

Estou tentando fazer com que o Wine no meu Mac execute alguns de meus antigos jogos para PC. Eu usei Macports para instalá-lo, mas não funcionou imediatamente. Eu segui Este  tutorial e, em seguida, olhou em volta um pouco na web para soluções, mas nada funcionou.

Ao tentar executar o meu exe, isso é o que acontece:

I entered

wine ~/Desktop/Pokemon3D.exe

and I get:

Wine cannot find the ncurses library (libncurses.5.4.dylib).
Fontconfig error: Cannot load default config file

(There's some more, but I'll post it at the end)

Não sei ao certo o que não está funcionando, mas não consigo entender. Qualquer sugestão seria apreciada. Por favor ajude!

O código DEPOIS do que está acima

Pokémon:

libgluezilla not found. To have webbrowser support, you need libgluezilla installed fixme:wincodecs:PngDecoder_Block_GetCount 0x1688848,0x32f3f8: stub fixme:wincodecs:PngDecoder_Block_GetCount 0x1687f78,0x32f3f8: stub fixme:wincodecs:PngDecoder_Block_GetCount 0x1690318,0x32ecd8: stub fixme:wincodecs:PngDecoder_Block_GetCount 0x1690b38,0x32f328: stub System.NullReferenceException: Object reference not set to an instance of an object at System.Windows.Forms.WebBrowser.Navigate (System.Uri url) [0x00000] in :0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.WebBrowser:Navigate (System.Uri) at Pokémon3D.Form1.Form1_Load (System.Object sender, System.EventArgs e) [0x00000] in :0 at System.Windows.Forms.Form.OnLoad (System.EventArgs e) [0x00000] in :0 at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs e) [0x00000] in :0

Configuração do NeverHood:

Unhandled exception: page fault on write access to 0x000d0000 in 32-bit code (0x4239eea6).

... E então um registro e despejo de pilha

Configuração de Neverhood95:

Nothing?!?

    
por Matthew Reynolds 11.02.2013 / 02:47

1 resposta

1

Obter ncurses 5.4 é bem difícil.

Eu não consegui encontrar nenhuma evidência de que essa versão estivesse disponível via brew, então tive que recorrer ao MacPorts. Consultei as instruções de "Instalando portas mais antigas" .

Verifique o ncurses Portfile , siga seu histórico para trás até encontrar o versão que você quer.
Eu pesquisei o histórico manualmente no GitHub.
Uma pesquisa mais automatizada pode parecer algo como git log -S'5.4' -- devel/ncurses/Portfile ... embora eu não tenha tido sorte com isso.

Descobri que 5,4 viviam em commit bcc8e4ecb7 . Clone o repositório macports git e faça o checkout desse commit:

git clone --single-branch https://github.com/macports/macports-ports.git
cd macports-ports
git checkout 686ea4fa0fddeb03fdf2fc04dded68e05181bc95

Agora vá para a pasta ncurses e execute uma instalação de porta:

cd devel/ncurses
sudo port install

Ele tenta compilar. Infelizmente isso é tanto quanto eu tenho. O compilador encontra erros - pelo menos usando o toolchain & bibliotecas que eu tenho no macOS Sierra.

A instalação desta versão de ncurses de 12 anos pode não ser mais simples.

EDIT: podemos compilar a distribuição da fonte ncurses da Apple, em vez de usar o projeto MacPorts. Veja este artigo .

Queremos (de opensource.apple.com ) o tarball de 10.6.2 's ncurses-27 . Aqui está o ncurses-27.tar.gz tarball .

Crie da seguinte forma:

make
mkdir -p /tmp/ncurses/Build
sudo make install

Isso deve criar um arquivo libncurses.5.4.dylib at /private/tmp/ncurses/Release/usr/lib/libncurses.5.4.dylib .

Agora precisamos instalar isso em algum lugar. Coloque-o em qualquer lugar que você se sinta (não sei, /usr/local/lib ?) E garanta que a pasta na qual o libncurses.5.4.dylib mora esteja incluída no seu DYLD_FALLBACK_LIBRARY_PATH .

Por exemplo, você pode adicionar isso ao seu .profile (ou melhor, qualquer arquivo que seja originado quando você executar o processo do vinho):

export DYLD_FALLBACK_LIBRARY_PATH="$DYLD_FALLBACK_LIBRARY_PATH:/usr/local/lib"
    
por 13.07.2017 / 01:44