lua脚本失败,找不到模块

时间:2016-02-11 23:08:35

标签: lua

我正在运行lua脚本。

#!/usr/bin/lua

require("posix")
require("math")
require("os")
-- ...

失败并出现以下错误:

xctest7b # lua attack.lua
lua: attack.lua:3: module 'posix' not found:
        no field package.preload['posix']
        no file './posix.lua'
        no file '/usr/share/lua/5.1/posix.lua'
        no file '/usr/share/lua/5.1/posix/init.lua'
        no file '/usr/lib64/lua/5.1/posix.lua'
        no file '/usr/lib64/lua/5.1/posix/init.lua'
        no file './posix.so'
        no file '/usr/lib64/lua/5.1/posix.so'
        no file '/usr/lib64/lua/5.1/loadall.so'
stack traceback:
        [C]: in function 'require'
        attack.lua:3: in main chunk
        [C]: ?

我已经安装了luarocks和luaposix。安装luaposix完成:

luaposix 33.3.1-1 is now built and installed in /usr/local

有关我真正需要安装的任何提示吗?

路径:

xctest7b # lua -e "print(package.cpath)"
/usr/local/lib/lua/5.3/?.so;/usr/local/lib/lua/5.3/loadall.so;./?.so

xctest7b # lua -e "print(package.path)"
/usr/local/share/lua/5.3/posix;/usr/local/share/lua/5.3/?.lua;/usr/local/share/lua/5.3/?/init.lua;/usr/local/lib/lua/5.3/?.lua;/usr/local/lib/lua/5.3/?/init.lua;./?.lua;./?/init.lua;

xctest7b # find /usr/local -name posix
/usr/local/share/lua/5.3/posix

1 个答案:

答案 0 :(得分:0)

如果您使用的是CentOS或类似版本,请尝试执行以下操作:

sudo yum install lua-posix

否则,如果您使用的是基于Debian / Ubuntu的系统,请执行以下操作:

sudo aptitude install lua-posix

请注意,ubuntu 18.04的依赖项存在一些问题,因此lua-posix模块不起作用,需要尚未安装的posix.ctype库(我尚未解决)。