InF*_*all 15 iphone macos lua cocoa-touch linker-errors
我想在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);
Run Code Online (Sandbox Code Playgroud)
我从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
Run Code Online (Sandbox Code Playgroud)
似乎.a文件没有链接到iPhone应用程序.有人知道如何使这项工作?
(顺便说一句,我真的不在乎苹果可能不接受我的应用程序,如果它有Lua.)
Rob*_*ier 19
你需要为ARM编译Lua .a,而不是Intel.如果Lua库使用autoconf,你可以使用我最喜欢的iphone/autoconf builder : build_for_iphoneos
. 如果它不是autoconf,那么你可以使用该脚本来了解如何攻击它.有时您可以构建一个静态库Xcode项目,将所有文件转储到其中并点击构建.如果构建足够简单,它将为您完成大部分工作.
我知道它对您的使用无关紧要,但基于Lua的工具通常可以在应用程序商店中发布.您无法在运行时下载任意代码并对其进行解释.
归档时间: |
|
查看次数: |
19883 次 |
最近记录: |