Lua 5.3 在 OSX 上的 Moonscript CLI 启动错误
Moonscript CLI launch error with Lua 5.3 on OSX
我正在使用 OS X 10.11.1 运行 最新版本的 X 代码。我今天从源代码安装了 Lua 5.3,没问题。似乎工作正常。安装 luarocks 然后使用它安装 moonscript 没有错误。但是,从命令行调用时,moon 和 moonc 都会出现以下错误:
$ moon
/usr/local/bin/lua: /usr/local/share/lua/5.3/alt_getopt.lua:24: attempt to call a nil value (global 'module')
stack traceback:
/usr/local/share/lua/5.3/alt_getopt.lua:24: in main chunk
[C]: in function 'require'
/usr/local/lib/luarocks/rocks/moonscript/0.4.0-1/bin/moon:2: in main chunk
[C]: in ?
查看 alt_getopt.lua 表明它确实在使用现已失效的 'module' 关键字。该模块的 GitHub 项目在过去 3 年内似乎已停止运行。
我应该如何继续让 Moonscript 在我的系统上运行?
是的,正如您所指出的,module
已被弃用很长一段时间,并且由于兼容性开关只能与早期版本一起使用。
可以将alt-getopt中的第24行注释掉,在alt-getopt.lua
文件末尾添加如下行:return {get_opts = get_opts, get_ordered_opts = get_ordered_opts}
.
这应该使此模块 Lua 5.2/5.3 兼容(不过我还没有检查使用 Lua 5.3 是否存在任何其他兼容性问题)。
我正在使用 OS X 10.11.1 运行 最新版本的 X 代码。我今天从源代码安装了 Lua 5.3,没问题。似乎工作正常。安装 luarocks 然后使用它安装 moonscript 没有错误。但是,从命令行调用时,moon 和 moonc 都会出现以下错误:
$ moon
/usr/local/bin/lua: /usr/local/share/lua/5.3/alt_getopt.lua:24: attempt to call a nil value (global 'module')
stack traceback:
/usr/local/share/lua/5.3/alt_getopt.lua:24: in main chunk
[C]: in function 'require'
/usr/local/lib/luarocks/rocks/moonscript/0.4.0-1/bin/moon:2: in main chunk
[C]: in ?
查看 alt_getopt.lua 表明它确实在使用现已失效的 'module' 关键字。该模块的 GitHub 项目在过去 3 年内似乎已停止运行。
我应该如何继续让 Moonscript 在我的系统上运行?
是的,正如您所指出的,module
已被弃用很长一段时间,并且由于兼容性开关只能与早期版本一起使用。
可以将alt-getopt中的第24行注释掉,在alt-getopt.lua
文件末尾添加如下行:return {get_opts = get_opts, get_ordered_opts = get_ordered_opts}
.
这应该使此模块 Lua 5.2/5.3 兼容(不过我还没有检查使用 Lua 5.3 是否存在任何其他兼容性问题)。