Problemas para instalar módulos com o LuaRocks no Windows 10

355 views
Skip to first unread message

Marcio Andrey Oliveira

unread,
Nov 1, 2019, 4:23:40 PM11/1/19
to Lua BR
Ola, a todos.

Estou tentando usar o Lua no Windows 10, mas estou tendo alguns problemas para instalar pacotes com o LuaRocks.

Se alguém puder me dar alguma dica, agradeço de coração. Já cansei de apanhar :)

Abaixo seguem os detalhes do meu ambiente, do que estou tentando fazer e o que está acontecendo.

1) Ambiente:

SO: windows 10 64 bits
Lua: versão 5.1.5 (LuaForWindows_v5.1.5-52.exe)
LuaRocks: versão 2.0.2 (vem no instalador acima)
MinGW32-gcc: versão 8.2.0 (instalado com mingw-get-setup.exe versão 0.6.3-pre-20170905-1)
SQLITE3
: versão 3.30.1 (sqlite-amalgamation-3300100.zip)


Nota:
No mesmo prompt de comando consigo executar os comandos lua, luarocks e o mingw32-gcc.

2) Objetivo: instalar lsqlite3

2.1) Comando usado: luarocks.bat install luasql-sqlite3

2.2) Resultado do  comando:

Installing http://luarocks.org/repositories/rocks/luasql-sqlite3-2.5.0-1.rockspec...

Error: Could not find expected file sqlite3.h for SQLITE -- you may have to install SQLITE in your system and/or set the SQLITE_DIR variable


Nota: esse problema ocorre com todos os pacotes que eu tentei instalar via LuaRocks no Windows.


3) Tentativas de resolver o problema:
3.1) setei as variáveis SQLITE_DIR e SQLITE_INCDIR com a localização dos arquivos fontes (.c e .h).
Resultado: mesmo erro do passo 2.2

3.2) copiei os fontes para o diretório include do MinGW.
Resultado: mesmo erro do passo 2.2

3.3) copiei os fontes para o mesmo diretório dos executáveis do Lua / LuaRocks.
Resultado: mesmo erro do passo 2.2

3.4) baixei uma versão mais recente do LuaRocks (luarocks-3.2.1-windows-32.zip)
Tive que passar na linha de comando um parâmetro para que fosse usada a versão 5.1 do Lua e outro para informar onde é o diretório de instalação do Lua 5.1

3.4.1) Comando:
    C:\soft\lua\luarocks-3.2.1-windows-32>luarocks --verbose --local --lua-dir=C:\soft\lua\Lua5.1 --lua-version=5.1 install lsqlite3

    Resultado:
    Acesso negado.
   
Acesso negado.


   
Error: Lua 5.1 interpreter not found at C:\soft\lua\Lua5.1
   
Tried:  C:\soft\lua\Lua5.1/bin/lua5.1.exe (C:\soft\lua\Lua5.1/bin/lua5.1.exe: No such file or directory)
            C
:\soft\lua\Lua5.1/bin/lua51.exe (C:\soft\lua\Lua5.1/bin/lua51.exe: No such file or directory)
            C
:\soft\lua\Lua5.1/bin/lua-5.1.exe (C:\soft\lua\Lua5.1/bin/lua-5.1.exe: No such file or directory)
            C
:\soft\lua\Lua5.1/bin/lua-51.exe (C:\soft\lua\Lua5.1/bin/lua-51.exe: No such file or directory)
            C
:\soft\lua\Lua5.1/bin/luajit.exe (C:\soft\lua\Lua5.1/bin/luajit.exe: No such file or directory)
            C
:\soft\lua\Lua5.1/bin/lua.exe (C:\soft\lua\Lua5.1/bin/lua.exe: No such file or directory)
            C
:\soft\lua\Lua5.1/lua5.1.exe (C:\soft\lua\Lua5.1/lua5.1.exe: No such file or directory)
            C
:\soft\lua\Lua5.1/lua-5.1.exe (C:\soft\lua\Lua5.1/lua-5.1.exe: No such file or directory)
            C
:\soft\lua\Lua5.1/lua-51.exe (C:\soft\lua\Lua5.1/lua-51.exe: No such file or directory)
            C
:\soft\lua\Lua5.1/luajit.exe (C:\soft\lua\Lua5.1/luajit.exe: No such file or directory)


Se repararem nas mensagens de erro, o LuaRocks tenta completar o path infomado usando a barra "/" e aí não o encontra (exemplo: C:\soft\lua\Lua5.1/lua5.1.exe)

Ocorre o mesmo problema se informo o caminho com assim:
C:\soft\lua\luarocks-3.2.1-windows-32>luarocks --verbose --local --lua-dir=C:/soft/lua/Lua5.1 --lua-version=5.1 install lsqlite3


Se eu não informo ao LuaRocks 3.2.1 que ele deve usar  o Lua 5.1, a mensagem de erro é a seguinte:
    C:\soft\lua\luarocks-3.2.1-windows-32>luarocks  install lsqlite3
   
Warning: Could not find a Lua 5.3 interpreter in your PATH. Modules may not install with the correct configurations. You may want to specify the path prefix to your build of Lua 5.3 using --lua-dir
   
Installing https://luarocks.org/lsqlite3-0.9.5-1.src.rock


   
Error: Failed finding Lua header files. You may need to install them or configure LUA_INCDIR.


Note que o variável LUA_INCDIR está definida:
    LUA_INCDIR=C:\soft\lua\Lua5.1\include


Procurei na Internet pelo problema, mas não achei nada que resolvesse o problema.

Eric Chiesse

unread,
Nov 5, 2019, 10:45:39 AM11/5/19
to lua...@googlegroups.com
Última vez que tentei instalar LuaSQL via LuaRocks no windows tive que debugar e corrigir uns bugs (mandar pull request). No meu caso acho que foi postgres, mas já tem muito tempo.

Parece que esses módulos não são testados no Windows e por isso eventualmente alguém tem problemas.
---
Eric


--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para lua-br+un...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/c98a051e-88f5-4f82-9f5c-a8c7f9be1dc6%40googlegroups.com.

Leonardo Ivo Neves da Silva

unread,
Nov 5, 2019, 11:09:10 AM11/5/19
to lua...@googlegroups.com


Experimentou executar em modo administrador? Tá parecendo isso.

Marcio Andrey Oliveira

unread,
Nov 5, 2019, 2:14:12 PM11/5/19
to Lua BR



Obrigado a ambos pelas respostas.

@Leonardo, eu já tentei isso (esqueci de falar no post inicial).

 
Reply all
Reply to author
Forward
0 new messages