Я пытаюсь использовать Lua на iPhone. В Mac OS X, в обычной (не-IOS) приложения какао, я использовал следующий код:Lua на iPhone?
lua_State* l;
l = lua_open();
luaL_openlibs(l);
luaL_loadstring(l, "print(\"Hi from Lua\");");
lua_pcall(l, 0, 0, 0);
Я скачал Lua 5.1.4 из lua.org/ftp и скомпилирован для 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. Кто-нибудь знает, как сделать эту работу?
(Кстати, я на самом деле не волнует, что компания Apple может не принять мое приложение, если оно имеет Lua в нем.)
Я не думаю, что Apple откажется, если у вас есть Lua. Это отличная идея. – Kekoa
Похоже, что Apple может смягчить свое положение на встроенных интерпретаторах внутри приложений iOS; см. http://www.appleoutsider.com/2010/06/10/hello-lua/ –