Olá pessoal!
Nas etapas a seguir vou tentar descrever de uma forma clara e objetiva como compilar o servidor otserv global1051 com suporte ao mysql no Fedora 21, lembrando que não vou abordar a instalação de um servidor LAMPP e/ou configuração do Banco de Dados. Apenas a instalação dos pacotes necessário para compilar e as etapas. Requerimentos:
Fedora 21 instalado ou virtualizado e devidamente atualizado;
Poderes administrativos "root" para instalar os pacotes necessários;
Conhecimento para acessar pastas usando o terminal (recomendado, mas é opcional, caso o seu gerenciador de arquivos tenha suporte de abrir terminal, no Nautilus é necessário ter instalado o nautilus-open-terminal (su -c "yum install nautilus-open-terminal");
Obviamente você precisa de acesso a internet .
Notas: # --> usuário root (administrador), irei usar o "su -c", semelhante ao comando sudo para executar operações que sejam necessária estar como root. $ --> usuário normal. * estarei usando o yum para a instalação de pacotes, pode substituir pelo dnf se preferir. Instalando os Pacotes necessários e opcionais(wget e nano): $ su -c "yum install wget nano @mysql cmake libxml2-devel gcc-c++ gmp-devel boost-devel lua-devel mysql-devel openssl-devel @development-tools" Baixando o OtServ: $ wget https://github.com/otservme/global1051/archive/master.zip Extraindo master.zip: $ unzip master.zip Acessando a pasta extraída: $ cd global1051-master
Antes de começarmos a devida preparação e compilação sera necessário fazer uma pequena mudança no arquivo configmanager.cpp. $ nano src/configmanager.cpp
Procure por #define lua_strlen lua_rawlen e modifique para #define lua_strlen(L,i) lua_rawlen(L, (i)) Nota: para localizar algo com nano use ctrl+w e para salvar o documento crtrl+x, lembrando que você pode usar seu editor de texto preferido tais como gedit, kate, leafpad, etc .
Tudo resolvido vamos lá.
Criar e acessar a pasta build ao qual sera usada para a compilação, para isso execute o comando abaixo no terminal: $ mkdir build && cd build Nota: o && serve como uma ponte entre dois ou mais comandos, ao invés de ter de executar comando por comando. Preparando e compilando: $ cmake .. && make -j$(nproc) Nota: -j (permite N tarefas de uma vez) e o $(nproc) imprimir o número de unidades de processamento disponíveis em sistemas multicore, se preferir use apenas o make. É isso ai pessoal, Divirtam-se!