Fórum Ubuntu Linux - PT

Suporte Técnico => Programação e Scripts => Tópico iniciado por: bred81 em 26 de Maio de 2012, 13:23

Título: [Resolvido]Erro com luasql.mysql
Enviado por: bred81 em 26 de Maio de 2012, 13:23
Então, to precisando fazer meu script em lua acessar o bd (MySQL).

O que já fiz até agora (O banco já está instalado):
Código: [Selecionar]
sudo aptitude install luarocks libmysqlclient-dev
sudo luarocks install luasql-mysql MYSQL_INCDIR=/usr/include/mysql
sudo aptitude install liblua5.1-sql-mysql-2 liblua5.1-sql-mysql-dev

O que fiz no script:
Citar
require "luasql/mysql"
env = assert(luasql.mysql())

O que ele me retorna:
Citar
fred@Pangolin:~/Ubuntu One/Teste$ lua bd.lua
lua: error loading module 'luasql/mysql' from file '/usr/local/lib/lua/5.1/luasql/mysql.so':
   /usr/local/lib/lua/5.1/luasql/mysql.so: undefined symbol: luaopen_luasql/mysql
stack traceback:
   [C]: ?
   [C]: in function 'require'
   bd.lua:1: in main chunk
   [C]: ?

Alguém tem alguma ideia de onde estou errando?
Título: Re: [Resolvido]Erro com luasql.mysql
Enviado por: bred81 em 27 de Maio de 2012, 10:25
Bom, de ontem pra hoje não lembro se instalei alguma coisa a mais, mas, o que sei que fez diferença:
Citar
driver = require "luasql.mysql"

envv = assert(driver.mysql())

con = assert (envv:connect("nome_banco", "usario", "senha"))
Não retornou nenhum erro.

Só para garantir:
Código: [Selecionar]
sudo aptitude install liblua5.1-sql-mysql-2 liblua5.1-sql-mysql-dev luarocks libmysqlclient-dev
sudo luarocks install luasql-mysql MYSQL_INCDIR=/usr/include/mysql

====================================

Funciona. Fiz estes passos num outro computador agora a pouco e foi. Só vale ressaltar que é para a versão 5.1 do lua. Antes, nesse novo computador, estava ocorrendo erro porque estava instalada a versão 5.2