Lua在Linux上找不到LuaRocks安装的模块

时间:2014-09-01 09:00:57

标签: linux lua luarocks

我在Linux Mint上安装了luarocks软件包,然后安装了一些诸如sudo luarocks install telescope之类的资源,但是当通过lua script.lua运行脚本时,require找不到模块。

Meta:做这个Q& A风格,因为虽然存在回答这个问题的问题,但似乎没有一个通常标题或容易找到,我希望我可以帮助这个人。

2 个答案:

答案 0 :(得分:6)

在这个特定的情况下,问题只是在我的发行版中,安装的默认Lua版本是在编写5.2时,而LuaRocks包是为5.1构建的,这意味着Lua 5.2无法找到应有的为模块使用不同的路径。

该问题的解决方案是从其github repository下载LuaRocks源代码,并将其编译为5.2

./configure --lua-version=5.2
make build
sudo make install

为了确保我也可以为LuaJIT安装软件包,目前使用5.1库,我还事先用lua-version=5.1执行了上面的行(如果我之后执行了它们,则默认为{{1} }命令将指向5.1版本。

要构建LuaRocks,您需要luarocks和/或liblua5.2-dev

答案 1 :(得分:0)

对我来说解决方案是这个。

我尝试

eval "$(luarocks path)"

它有效。

希望它对其他人有用。