Lua在iPhone上?

我试图在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);

我从lua.org/ftp下载了Lua 5.1.4,并将其编译为Mac OS X.
在Xcode项目中,我使用“添加现有框架”来添加liblua.a,我使用“添加现有文件”来添加include目录.

这样可以预期,并打印字符串:“你好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,我不太在乎.)

解决方法

您需要为ARM编译Lua .a,而不是Intel.如果Lua库使用autoconf,则可以使用我最喜欢的iphone / autoconf构建器: build_for_iphoneos.如果不是autoconf,那么可以使用该脚本了解如何攻击它.有时您可以建立一个静态库Xcode项目,将所有文件转储到其中,然后点击构建.如果构建足够简单,它将为您做大部分工作.

我知道这对您的使用并不重要,但是基于Lua的工具通常可以在应用商店中发货.您只能在运行时下载任意代码并进行解释.

相关文章

1.github代码实践源代码是lua脚本语言,下载th之后运行thmai...
此文为搬运帖,原帖地址https://www.cnblogs.com/zwywilliam/...
Rime输入法通过定义lua文件,可以实现获取当前时间日期的功能...
localfunctiongenerate_action(params)localscale_action=cc...
2022年1月11日13:57:45 官方:https://opm.openresty.org/官...
在Lua中的table(表),就像c#中的HashMap(哈希表),key和...