Artigos‎ > ‎

Compilar Minetest em GNU/Linux

Por BrunoMine

Compilar o Minetest pode ser interessante para algumas situações como desenvolvimento de mods ou montagem de servidores pois permite personalizações mais profundas no jogo permitindo assim a realização de algum projeto especifico.

Instalar dependências
Minetest precisa de algumas bibliotecas e programas para ser compilado e executado. Alem disso vamos instalar o git apenas para facilitar baixar os códigos fonte do jogo.
Para Debian/Ubuntu:
$ sudo apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
Para Fedora:
$ sudo dnf install make automake gcc gcc-c++ kernel-devel cmake libcurl* openal* libvorbis* libXxf86vm-devel libogg-devel freetype-devel mesa-libGL-devel zlib-devel jsoncpp-devel irrlicht-devel bzip2-libs gmp-devel sqlite-devel luajit-devel leveldb-devel ncurses-devel doxygen spatialindex-devel bzip2-devel

Baixar código fonte
Vamos baixar o código fonte do Minetest (lembre de estar na pasta/diretório desejado)
$ git clone --depth 1 https://github.com/minetest/minetest.git
Entre na pasta/diretório do jogo
$ cd minetest
Baixe o subgame minetest_game
$ git clone --depth 1 https://github.com/minetest/minetest_game.git games/minetest_game

Configurar compilação
Nessa etapa vamos definir algumas características da montagem do Minetest para compilação. Essas definições são feitas com a sintaxe "-Ddefinição=TRUE" (veja algumas opções interessantes no final dessa página). No exemplo usaremos a definição "RUN_IN_PLACE" (rodar no local) pois é muito usado por desenvolvedores e servidores pois mantêm certos dados do jogo (mundos e configurações) dentro da própria pasta (como uma versão portable/portátil) quando é executado (o binário). É bom saber que o jogo tem definições por padrão, mas você pode usar esse comando para ajustar seu Minetest de acordo com o que quiser colocando TRUE(ativa) ou FALSE(desativa) (ou 1(ativa) e 0(desativa)).
$ cmake . -DRUN_IN_PLACE=TRUE

Compilar
E então finalmente iniciamos a compilação do jogo (isso pode levar algum tempo até terminar). Nesse comando você pode definir um número de núcleos de processamento do processador para realizar a compilação mais rápido, e para facilitar já preparei um comando que pega o número real de núcleos automaticamente.
$ make -j$(grep -c processor /proc/cpuinfo)

Pronto! Seu Minetest está preparado para ser usado.

Lista de configurações para compilação
 Sintaxe da configuraçãoFuncionalidade
RUN_IN_PLACEVersão portátil
(mundos e configurações na pasta do jogo) 
ENABLE_FREETYPECompila com FreeType2. Permite o uso de fontes TTF.

ENABLE_CURL
Compila com cURL. Permite publicação em lista de servidores, servidores de mídia remota e repositórios de mods online.