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.
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 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.