SFML é uma ótima alternativa para desenvolver jogos 2D, além de outros recursos multimidia.
No Windows é muito fácil de usá-lo com o Visual Studio, no entanto, há quem prefira usar o SFML no seu Editor de Código/IDE preferido e também utilizar um outro compilador em vez do MSVC.
Nesse artigo veremos como compilar seus projetos em SFML com GCC com MinGW no Windows.
Antes de mais nada é necessário possuir o GCC/G++ com MinGW devidamente instalado no seu sistema, e para fazer isso, caso você ainda não o possua instalado, basta seguir os passos desse tutorial:
Após devidamente instalado e funcionando o GCC/G++ com MinGW próximo passo é fazer o download de um pacote diferente do SFML(diferente da versão Visual Studio).
E para isso acesse a página de downloads do site do SFML no link: https://www.sfml-dev.org/download/sfml/2.5.1/ e faça o download da versão: GCC 7.3.0 MinGW (SEH) - 64-bit
conforme imagem abaixo:
Se quiser baixar por aqui mesmo, basta clicar no botão abaixo:
Download GCC 7.3.0 MinGW (SEH) - 64-bit
O arquivo baixado será de nome e extensão: SFML-2.5.1-windows-gcc-7.3.0-mingw-64-bit.zip
, extraia esse arquivo clicando com o botão direito do mouse e escolha Extrair aqui
.
Após extraído haverá a pasta de nome: SFML-2.5.1
, renomei ela para somente SFML
.
Ficará mais fácil ao usarmos quando compilar.
Agora entre nessa pasta(SFML
) e copie todos os arquivos que estão dentro da subpasta: bin
para a “raiz” do seu projeto e depois copie também toda a pasta SFML
também para dentro da “raiz” do seu projeto, os arquivos são:
Após listar os arquivos com o comando
ls
do PowerShell dentro da pasta do meu projeto:MyProjectSFML
.
No que além da pasta SFML
e dos arquivos copiados da subpasta SFML\bin
há também o arquivo main.cpp
que há o código que iremos compilar, se quiser usá-lo como teste, use o código abaixo:
Agora vamos compilar!
Para compilar basta entrar no seu projeto através do PowerShell ou CMD
e rodar o comando:
Note o uso dos parâmetros: -I
(include) e -L
(lib) com os respectivos direcionamentos para a pasta SFML
que está dentro do nosso projeto. E também das flags:
Se estiver criando um código com Áudio e/ou Network adicone as flags:
-lsfml-audio -lsfml-network
.
Agora é só rodar o binário e correr pro abraço:
Se quiser utilizar Makefile ou um script em Lua para facilitar o comando de compilação, fique à vontade! Nós mostramos como fazer isso no artigo sobre Imagens com SDL2.