我正在尝试将lproc程序的例子(介绍编程Lua,第30章)加载到Lua中,并以某种方式弄脏了它。我正在关注这个 - http://www.lua.org/pil/26.2.html让我的c模块进入lua。以下是我所采取的步骤:在Lua中加载一个C模块
我有一个lproc.h和lproc.c(含正是在这本书的第30章中规定的功能)。我编译lproc.c为--- gcc -c lproc.c -DLUA-USERCONFIG = \“lproc.h \”
我从lproc.o中创建了一个库,命名相同。
然后按照指示编译lua.c。我的头文件包含宏LUA_EXTRALIBS和方法声明。
走到Lua解释,它给了以下错误:
> require "lproc" stdin:1: module 'lproc' not found: no field package.preload['lproc'] no file './lproc.lua' no file '/opt/local/share/lua/5.1/lproc.lua' no file '/opt/local/share/lua/5.1/lproc/init.lua' no file '/opt/local/lib/lua/5.1/lproc.lua' no file '/opt/local/lib/lua/5.1/lproc/init.lua' no file './lproc.so' no file '/opt/local/lib/lua/5.1/lproc.so' no file '/opt/local/lib/lua/5.1/loadall.so' stack traceback: [C]: in function 'require' stdin:1: in main chunk [C]: ?
看来这个模块没有得到注册,我需要从Lua呢?时间很短,我正在做一些可怕的错误,任何方向都会受到欢迎。
感谢,
萨扬
您使用的是哪个版本的Lua?在线PIL已经过时 – 2010-07-15 23:32:43
我从Macports下载了Lua 5.1.4。 – Sayan 2010-07-16 01:16:10