Луадзит не видит камни, установленные Луароками

StackOverflow https://stackoverflow.com/questions/6803582

  •  25-10-2019
  •  | 
  •  

Вопрос

lua -e "print (package.path)"

./?.lua ;/usr/share/lua/5.1/? lib/lua/5.1/?/init.lua

luajit -e "print (package.path)"

./? /?/init.lua

Я попытался добавить пакет Луа. Парень, но без кубиков. Луадзит просто не может найти ни одного из камней, это странно. Что мне здесь делать?

Это было полезно?

Решение

Два предложения:

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

Пример:

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:~$ 

Другие советы

Если вы установили модуль, используя Luarocks, но не как root, Stick:require 'luarocks.loader'Прежде чем включить модуль, и он должен быть включен без ошибки.

На Mac? Бег brew?

Установить lua51, который упакован с luarocks псевдоним как 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"))'

Прежде чем компилировать Luajit, измените lua_root с /usr /local на /usr в src /luaconf.h.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top