【问题标题】:How to properly set up environment for Lua如何正确设置 Lua 环境
【发布时间】:2018-01-21 23:39:25
【问题描述】:

您能帮我在 Windows 中设置 Lua 环境吗?我已将 C:\lua\bin 添加到 PATH 系统环境中。变量。但是当我尝试使用print("hello world") 运行文件例如 test.lua 时,解释器可能会看到该文件,但我在 git-bash 中收到此消息:

$ test.lua
/c/lua/bin/test.lua: line 1: syntax error near unexpected token "hello world"
/c/lua/bin/test.lua: line 1: print("hello world")

当我尝试在 cmd 中打开 test.lua 时,没有错误,只是带有代码的记事本打开了……但是文件中的代码没有执行。 谢谢

【问题讨论】:

  • 如果示例是从互联网(从浏览器)复制的,撇号可能是错误的(有时)

标签: lua mingw msysgit


【解决方案1】:

您可以将路径扩展名与 Lua 可执行文件相关联,例如

ftype LuaScriptx86=c:\lua\x86\5.1\lua5.1.exe "%1" %*
assoc .lua=LuaScriptx86

(不要忘记第一个参数的引号) 然后将.LUA 添加到PATHEXT 环境变量。 所以你可以只运行test 而不是lua test.lua

【讨论】:

  • 此解决方案在纯 Windows 中运行良好,但在 MINGW 下无法运行(OP 希望在 git-bash 命令提示符下运行 Lua 脚本)。
【解决方案2】:

bash 和 cmd 不知道您想使用 Lua 解释器执行文件。

我假设 Lua 解释器位于 C:\lua\bin\lua.exe?如果是这样,您应该能够使用命令lua test.lua 运行您的脚本。在 bash 中,您可能需要改用 /c/lua/bin/lua test.lua

【讨论】:

  • 是的,lua.exe 和 luadist.exe 在 C:\lua\bin\ 中。当我输入:'lua test.lua' 我得到“lua: cannot open test.lua: No such文件或目录”,当我尝试使用 luadist test.lua 时,我收到以下消息:imgur.com/2RH7SOB .
【解决方案3】:

例子:

我在文件夹C:\Lua\中有lua53.exe
我没有将此路径添加到系统变量 PATH。

这是我的 Lua 文件“a.lua”,其中包含 shebang:

$ cat a.lua
#!/c/Lua/lua53
print"Hello"

这就是我运行它的方式:

$ ./a.lua
Hello

附言
您可以使用 Windows 样式的换行符 CR LF 终止 shebang 行(这样的 shebang 在 *nix 上不起作用),因此使用记事本编辑 Lua 文件是可以的。

【讨论】:

  • 我使用了完全相同的代码,只是更改了路径,但解释器仍然看不到文件。我可能在编译 lua 时犯了一些错误。
  • 你可以从here下载Lua二进制文件lua-5.3.4_Win64_bin.zip
猜你喜欢
  • 1970-01-01
  • 2020-10-31
  • 1970-01-01
  • 2016-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-13
  • 2019-10-30
相关资源
最近更新 更多