Pregunta

lua -e "print (paquete.path)"

./? lib/lua/5.1/?/init.lua

lujit -e "print (paquete.path)"

./? /?/init.lua

He intentado agregar el paquete de Lua.path, aunque no hay dados. Luajit parece que no puede encontrar ninguna de las rocas, es raro. ¿Qué debo hacer aquí?

¿Fue útil?

Solución

Dos sugerencias:

1. Install rocks as root to get them in /usr/local
2. Use ldconfig to update shared library cache

Ejemplo:

e@eSammy:~$ sudo luarocks install lsqlite3
[sudo] password for e:
Installing http://luarocks.org/repositories/rocks/lsqlite3-0.8-1.src.rock...
...
lsqlite3 0.8-1 is now built and installed in /usr/local/ (license: MIT/X11)
e@eSammy:~$ sudo /sbin/ldconfig
[sudo] password for e:
e@eSammy:~$ rlwrap luajit
LuaJIT 2.0.0-beta8 -- Copyright (C) 2005-2011 Mike Pall. http://luajit.org/
JIT: ON CMOV SSE2 SSE3 ATOM fold cse dce fwd dse narrow loop abc fuse
> require 'lsqlite3'
> =sqlite3.version()
3.7.7.1
> os.exit()
e@eSammy:~$ 

Otros consejos

Si ha instalado el módulo con Luarocks, pero no como raíz, palo:require 'luarocks.loader'Antes de incluir el módulo y debe incluirse sin el error.

En una mac? Correr brew?

Instalar lua51, que está empaquetado con luarocks alias como luarocks-5.1:

brew install luajit lua51
eval `luarocks-5.1 path --bin` # exports LUA_PATH, LUA_CPATH, PATH
luarocks-5.1 install socket
luajit -e 'print(require("socket"))'

Antes de compilar luajit, cambie Lua_root de /usr /local a /usr en src /luaconf.h.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top