Anterior: O sistema ALua |
Próximo: A API do ALua 6.0 |
Este documento demonstra, passo a passo, o processo de instalação do ALua 6.0 e de suas dependências, que são os seguintes módulos, a saber:
Os procedimentos descritos para a instalação de cada uma dessas depêndencias e do ALua em si tomam como base uma máquina Linux dotada de uma Korn Shell (ou compatível), de uma ferramenta GNU make e de um compilador C compatível com o GCC.
Lua é a linguagem de programação na qual ALua é escrito e se baseia para montar e executar aplicações. Para baixá-la, vá até o site http://www.lua.org/ e siga os links correspondentes. A versão 6.0 do ALua utiliza a versão 5.1 de Lua — no momento da escrita deste documento, a versão estável de Lua era a 5.1.3.
O primeiro passo consiste em descompactar o Lua.
$ tar xfzv lua-5.1.3.tar.gz
Agora, entre no diretório "lua-5.1.3" e abra para edição o arquivo de nome Makefile. Você deverá encontrar um conjunto de linhas associando valores a variáveis de ambiente. Agora precisamos escolher onde vamos instalar o Lua. Há duas possibilidades; ou o instalamos no espaço "global" do sistema, o que requer acesso privilegiado no sistema (acesso de root), ou em algum diretório dentro do nosso diretório de trabalho (home), para que só nós possamos usá-lo. Para tanto, basta modificar a variável INSTALL_ROOT para o diretório no qual gostaríamos de instalar a linguagem. Neste guia, assumiremos que não temos acesso root e, portanto, a instalação será feita dentro da nosso home.
Alteramos então a entrada
INSTALL_ROOT= /usr/localPara
INSTALL_ROOT= /home/pedro/lua
Também precisamos indicar para o ambiente Lua onde ele deve procurar os módulos adicionais. Assim, precisamos editar o arquivo luaconfig.h que se encontra dentro do diretório src. Procure a seguinte linha
#define LUA_ROOT "/usr/local/"
e altere o valor para ser o mesmo usado na variável INSTALL_ROOT configurada acima, por exemplo,
#define LUA_ROOT "/home/pedro/lua/"
Atenção, é importante manter a barra ("/") no final!
Com isso os módulos adicionais de Lua serão procurados nos diretórios /home/pedro/lua/share/lua/5.1 e /home/pedro/lua/lib/lua/5.1. No primeiro diretório ficarão os módulos escritos exclusivamente em Lua e no segundo os módulos em formato binário, ou seja, bibliotecas dinâmicas comumente desenvolvidas na linguagem C.
Com essas poucas modificações, estamos prontos para compilar a linguagem. Se você estiver dentro do diretório src, volte para o diretório "lua-5.1.3". Prossiga efetuando o comando 'make linux' para compilar.
$ make linux
Por padrão, a compilação para ambiente Linux usa as bibliotecas ncurses e readline. Caso o comando 'make linux' apresente um erro por não encontrar essas bibliotecas há duas soluções. A primeira é, obviamente, instalar os pacotes de desenvolvimento ncurses e readline da sua distribuição Linux. Por exemplo, em algumas distribuições esses pacotes são libncurses5-dev e libreadline5-dev.
Caso não seja possível instalar tais bibliotecas, a alternativa é redefinir os parâmetros de compilação de Lua, alterando o arquivo Makefile que se encontra dentro do diretório src. Procure a linha de compilação de Lua para sistemas Linux
linux:
$(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses"
e altere os valores de MYCFLAGS e MYLIBS para
linux:
$(MAKE) all MYCFLAGS="-DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-Wl,-E -ldl"
Volte ao diretório "lua-5.1.3", caso não esteja, e tente compilar novamente com o comando
$ make linux
Após a compilação, execute o comando
$ make install
para realizar a instalação de Lua. Para verificar o sucesso da instalação, você pode executar o interpretador Lua:
$ ~/lua/bin/lua Lua 5.1.3 Copyright (C) 1994-2008 Lua.org, PUC-Rio
>
É recomendado que você adicione o local onde o binário do Lua foi instalado (no nosso caso /home/pedro/lua/bin) ao PATH da sua shell. Isso pode ser feito diretamente da linha de comando,
$ export PATH=/home/pedro/lua/bin:$PATH
que fica valendo até a shell ser fechada, ou a partir do arquivo de inicialização da sua shell (.bashrc, .profile. .zshrc, ou equivalente), que é a opção mais indicada.
LuaSocket é a biblioteca usada por ALua para o transporte de dados via rede. Faça download do arquivo luasocket-2.0.2.tar.gz e siga os passos para a instalação.
Comece descompactando o pacote:
$ tar xfzv luasocket-2.0.2.tar.gz
No diretório luasocket-2.0.2, modifique o arquivo config, indicando na variável LUAINC onde os cabeçalhos (os arquivos .h) da biblioteca de Lua 5.1 foram instalados. De acordo com o nosso exemplo, esses arquivos se encontram no diretório /home/pedro/lua/include. Então, a definição da variável é a seguinte:
LUAINC=-I/home/pedro/lua/include
Note o "-I" antes da indicação do diretório.
Ainda no arquivo config, você deve indicar os diretórios onde os arquivos do LuaSocket deverão ser instalados. As variáveis INSTALL_TOP_SHARE e INSTALL_TOP_LIB indicam esses diretórios. Essas variáveis devem apontar para os mesmo diretórios definidos no arquivo luaconf.h (vide a instalação de Lua na seção anterior). De acordo com este roteiro, as variáveis devem ser modificadas para os seguintes valores:
INSTALL_TOP_SHARE=/home/pedro/lua/share/lua/5.1 INSTALL_TOP_LIB=/home/pedro/lua/lib/lua/5.1
Agora, basta usar o comando 'make' para compilar o LuaSocket e instalar os módulos, como segue:
$ make $ make install
Para testar a instalação, tente carregar a biblioteca:
$ lua
Lua 5.1.3 Copyright (C) 1994-2008 Lua.org, PUC-Rio
> require("socket")
>
LuaTimer é uma biblioteca que oferece a capacidade de se utilizar temporizadores em Lua. Você pode baixar o arquivo aqui.
O primeiro passo consiste em descompactar a biblioteca.
$ tar xfzv luatimer-2.0.1.tar.gz
Então, entre no diretório "luatimer-2.0.1/unix". Se Lua não estiver instalada nos diretórios padrões do sistema (como é o caso do nosso guia), devemos editar o arquivo Makefile para que descreva corretamente nosso ambiente de compilação. Nesse arquivo, a única modificação necessária será na linha que define LUAINC. Primeiro, retire o caractere '#', para que a variável seja reconhecida, e depois informe onde os cabeçalhos (os arquivos .h) da biblioteca de Lua 5.1 foram instalados, após o "-I". Assumindo os passos deste roteiro, o valor da variável será:
LUAINC=-I/home/pedro/lua/include
Em seguida, execute
$ make linux
para compilar a biblioteca para a plataforma Linux.
Para instalar o LuaTimer, copie o arquivo luatimer.so para o diretório de módulos binários de Lua (em caso de dúvida, vide a seção de instalação de Lua 5.1). Pelo nosso roteiro, o arquivo deveria ser copiado para o diretório /home/pedro/lua/lib/lua/5.1. Também copie o arquivo luatimer.lua, que se encontra no diretório "luatimer-2.0.1/lua" para o diretório de módulos Lua, neste caso, o diretório /home/pedro/lua/share/lua/5.1.
Para testar a instalação, tente carregar o módulo LuaTimer:
$ lua
Lua 5.1.3 Copyright (C) 1994-2008 Lua.org, PUC-Rio
> require("luatimer")
>
Uma vez que todas as dependências do ALua estiverem instaladas, obtenha a verão 6.0 e descompacte-a:
$ tar xfzv alua-6.0.tar.gz
Entre no diretório "alua-6.0/unix". Se Lua não estiver instalada nos diretórios padrões do sistema (como é o caso do nosso guia), devemos editar o arquivo Makefile para que descreva corretamente nosso ambiente de compilação. Localize a linha onde a varíavel LUAINC é definida. Retire o caractere '#', para que ela seja reconhecida e depois informe onde os cabeçalhos (os arquivos .h) da biblioteca de Lua 5.1 foram instalados, após o "-I". Assumindo os passos deste roteiro, o valor da variável será:
LUAINC=-I/home/pedro/lua/include
Em seguida, execute
$ make linux
para compilar a biblioteca para a plataforma Linux.
Copie o arquivo alua.so para o diretório de módulos binários de Lua (por este guia, /home/pedro/lua/lib/lua/5.1). Copie também o arquivo alua.lua e o diretório alua para o diretório de módulos escritos em Lua (/home/pedro/lua/share/lua/5.1).
Para testar a instalação, tente carregar o módulo alua.
$ cd /home/pedro
$ lua
Lua 5.1.3 Copyright (C) 1994-2008 Lua.org, PUC-Rio
> require("alua")
>
Última atualização: 06-Out-2008 18:08