我试图让 Iup 在 Lua 中工作。我已经在 C 中成功安装并运行了 iup,但是我的 gui 中有一个嵌入式 lua 解释器,能够从解释器加载对话框会很有帮助。但是,当我尝试执行时require("iuplua")
,出现以下错误:
> require("iuplua")
stdin:1: module 'iuplua' not found:
no field package.preload['iuplua']
no file './iuplua.lua'
no file '/usr/local/share/lua/5.1/iuplua.lua'
no file '/usr/local/share/lua/5.1/iuplua/init.lua'
no file '/usr/local/lib/lua/5.1/iuplua.lua'
no file '/usr/local/lib/lua/5.1/iuplua/init.lua'
no file '/usr/share/lua/5.1/iuplua.lua'
no file '/usr/share/lua/5.1/iuplua/init.lua'
no file './iuplua.so'
no file '/usr/local/lib/lua/5.1/iuplua.so'
no file '/usr/lib/x86_64-linux-gnu/lua/5.1/iuplua.so'
no file '/usr/lib/lua/5.1/iuplua.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
[C]: in function 'require'
stdin:1: in main chunk
[C]: ?
我认为这是因为 iup 的 Lua 库没有正确安装。我试图直接移动到包含该iuplua.lua
文件的目录并再次尝试,并得到:
> require("iuplua")
./iuplua.lua:6: attempt to index global 'iup' (a nil value)
stack traceback:
./iuplua.lua:6: in main chunk
[C]: in function 'require'
stdin:1: in main chunk
[C]: ?
这似乎意味着iuplua.lua
文件中的错误。我通过从 sourceforge 下载二进制文件安装了 iup(我没有从源代码编译),并从 apt 存储库安装了 lua 5.1(我的项目需要 5.1。请不要推荐并升级到 5.2)。我正在运行 Mint 13。
非常感谢任何有关解决这些问题的建议。