Erro ao executar .exe compilado com i586-mingw32msvc-g ++ e SFML

0

Bem, estou lutando com o WINE e MinGW32 agora. Então eu tenho um arquivo, sortem.cpp que é compilado com um Makefile e vinculado e tudo a partir desse Makefile.

sortem.cpp

#include <windows.h>
#include <iostream>
#include <string>
#include <SFML/System.hpp>
#include <SFML/Window.hpp>
#include <SFML/Audio.hpp>
#include <SFML/Graphics.hpp>

int main ()
{
    sf::RenderWindow window;
    window.create(sf::VideoMode(720,480),"Sort 'em!");
    while (window.isOpen())
    {
        sf::Event event;
        while (window.pollEvent(event))
            {
                window.clear();
                switch (event.type)
                {
                    case sf::Event::Closed:
                        window.close();
                }
                window.display();
            }
    }
    return 0;
}

Makefile

LD = ../bin
LIBS= $(LD)/sfml-window-2.dll $(LD)/sfml-system-2.dll $(LD)/sfml-graphics-2.dll $(LD)/sfml-network-2.dll $(LD)/sfml-audio-2.dll
OBJECTS= sortem.o
CXX= i586-mingw32msvc-g++
all: sortem.exe

sortem.exe: $(OBJECTS)
     $(CXX) -o ../bin/sortem.exe $(OBJECTS) $(LIBS)

%.o: %.cpp 
    $(CXX) -c $<

clean:
     rm *.o 

Portanto, o programa compila perfeitamente, mas ao executar sortem.exe com o WINE, ele diz que o programa deve sair. Eu clico em "Mostrar detalhes" e isso aparece. Unhandled exception: page fault on write access to 0x00000000 in 32-bit code (0x0046f4c6). e muitos hexdumps. Eu realmente não sei o que estou fazendo de errado, talvez as bibliotecas de SFML não estejam atualizadas? Mas isso me daria um erro de compilação, não um erro de execução ... Muito obrigado pela ajuda, pessoal.

    
por ChemiCalChems 08.02.2015 / 12:46

1 resposta

0

Por fim, descobri que a melhor solução era instalar o MinGW no Wine e executar o g ++. exe do Wine. Funciona como um encanto e nunca dá um único problema quando a configuração é concluída.

    
por ChemiCalChems 26.06.2015 / 23:33