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:
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.