Lua sur l'iPhone?
Je suis en train d'utiliser Lua sur l'iPhone. Sur Mac OS X, dans un état normal (non-iOS) application Cocoa, j'ai utilisé le code suivant:
lua_State* l;
l = lua_open();
luaL_openlibs(l);
luaL_loadstring(l, "print(\"Hi from Lua\");");
lua_pcall(l, 0, 0, 0);
J'ai téléchargé Lua 5.1.4 lua.org/ftp et compilé pour Mac OS X.
Dans le projet Xcode, j'ai utilisé "Ajouter un Cadre Existant" pour ajouter liblua.a
et j'ai utilisé "Ajouter des Fichiers" pour ajouter le répertoire include.
Cela fonctionne comme prévu, et affiche la chaîne de caractères: "Salut de Lua".
Lorsque j'essaie la même chose dans un projet iOS, il donne les erreurs:
"_luaL_newstate", referenced from:
_main in main.o
more of the same thing...
symbol(s) not found
collect2: ld returned 1 exit status
Il semble que l' .un fichier n'est pas lié à l'application iPhone.
Quelqu'un sait comment faire ce travail?
(En passant, je n'ai pas vraiment de soins qu'Apple pourrait ne pas accepter mon application si elle a Lua).
source d'informationauteur InFreefall
Vous devez vous connecter pour publier un commentaire.
Vous aurez besoin de compiler le Lua .un de ses BRAS, de ne pas Intel. Si la bibliothèque Lua utilise autoconf, vous pouvez utiliser mon préféré iphone/autoconf constructeur:
build_for_iphoneos
. Si ce n'est pas autoconf, vous pouvez utiliser ce script pour avoir une idée de la façon de l'attaquer. Parfois, vous pouvez simplement construire une Bibliothèque Statique Xcode projet, vidage de tous les fichiers, puis cliquez sur créer. Si la construction est assez simple, il va faire la plupart du travail pour vous.Je sais qu'il n'a pas d'importance pour votre utilisation, mais Lua basée sur des outils sont généralement livrables sur l'app store. Vous ne pouvez pas télécharger du code arbitraire au moment de l'exécution et de l'interpréter.
Vous pourriez vouloir vérifier iPhone Cire. C'est un lua/iPhone pont qui vous permet d'écrire natif des applications de l'iPhone dans le plus pur lua! Voici une jolie bon tuto à ce sujet.
Si vous voulez écrire du code Lua pour iOS, puis vérifier MOAI immédiatement: http://getmoai.com/
Son absolument agréable cadre pour le développement de jeux sur iOS et Android ainsi que Windows et OSX. Non seulement cela, mais elle donne une assez bonne idée de la façon de mettre en œuvre correctement Lua-VM en fonction de l'environnement d'hébergement pour l'écriture de scripts dans une croix-plate-forme: de MOAI, vous pouvez en apprendre beaucoup à ce sujet. J'ai fait 4 titres avec MOAI pour l'instant, et ne sera pas arrêter de si tôt .. MOAI absolument coups de pied au cul!
Également vérifier LOAD81, qui est un effort similaire mais avec SDL comme l'environnement cible: http://github.com/antirez/load81
(Que j'ai contribué un peu à la LOAD81 projet, et plus précisément de donner il dispose d'intérêt ou de la valeur à la OpenPandora de la communauté. MOAI est de plus en plus commerciaux, LOAD81 plus amateur..)
Pour ceux qui cherchent à apprendre le Lua et les différentes méthodes d'intégration de la VM Lua dans un projet pour plusieurs plate-forme de cibles, les deux MOAI et LOAD81 peut fournir beaucoup de grand fond et des indices sur la bonne façon de procéder.