我正在尝试在iPhone上使用Lua。在Mac OS X的普通(非iOS)Cocoa应用程序中,我使用了以下代码:
lua_State* l;
l = lua_open();
luaL_openlibs(l);
luaL_loadstring(l, "print(\"Hi from Lua\");");
lua_pcall(l, 0, 0, 0);
我从lua.org/ftp下载了Lua 5.1.4并编译了Mac OS X版本。
在Xcode项目中,我使用"添加现有框架"来添加liblua.a
,并使用"添加现有文件"来添加包含目录。
这个方法像预期的一样工作,并打印出字符串:"Hi from Lua"。 当我在iOS项目中尝试同样的事情时,它会产生错误:
"_luaL_newstate", referenced from:
_main in main.o
more of the same thing...
symbol(s) not found
collect2: ld returned 1 exit status
看起来 .a 文件没有链接到 iPhone 应用程序中。 有人知道如何解决这个问题吗?
(顺便说一句,我并不在意如果我的应用程序中有 Lua,苹果可能不会接受它。)