2

我正在为 Windows 使用 Lua。

我正在尝试来自 wxLua 网站的示例脚本;但是,当我运行脚本时,它在第一行失败,即require 'wx'

lua: cannot open wx: No such file or directory

但是,require 'wx'在 REPL/解释器中执行时,它可以正常工作。

我已经完成了另一个脚本来输出print(package.cpath)and print(package.path),它们在我看来和 REPL 中的一样。

为什么在运行脚本时找不到'wx'?

在这种情况下,我从同一个文件夹运行脚本和 shell/REPL。

package.cpath 的值(由测试脚本和 Lua shell 生成):

.\?.dll;.\?51.dll;C:\Program Files (x86)\Lua\5.1\?.dll;C:\Program Files (x86)\Lu a\5.1\?51.dll;C:\Program Files (x86)\Lua\5.1\clibs\?.dll;C:\Program Files (x86)\ Lua\5.1\clibs\?51.dll;C:\Program Files (x86)\Lua\5.1\loadall.dll;C:\Program File s (x86)\Lua\5.1\clibs\loadall.dll

和 package.path (同样,脚本和 Lua shell 相同):

;.\?.lua;C:\Program Files (x86)\Lua\5.1\lua\?.lua;C:\Program Files (x86)\Lua\5.1\lua\?\init.lua;C:\Program Files (x86)\Lua\5.1\?.lua;C:\Program Files (x86)\Lua\5.1\?\init.lua;C:\Program Files (x86)\Lua\5.1\lua\?.luac

上面的 cpath 值引用了一个wx.dllin其中。C:\Program Files (x86)\Lua\5.1\clibs

4

1 回答 1

2

好吧,这是我自己的愚蠢:我将文件命名为wx.lua,所以显然require是在尝试获取脚本本身。

通过简单地重命名文件,它工作正常。

于 2013-07-25T09:45:40.833 回答