2009-08-06 9 views
10

¿Qué puedo usar para programar la secuencia de comandos Lua en Mac OS X? Estoy buscando algo que pueda usar para compilar/interpretar guiones Lua en OS X.Programación en Lua en OS X?

Respuesta

12

La fuente de Lua se compila fácilmente sin cambios en el mac. Construirá lua (el intérprete que puede actuar en un script de origen, un script precompilado o de forma interactiva) y luac, que se puede usar para precompilar los scripts de origen.

Desde el sitio web lua.org: http://luabinaries.luaforge.net/download.html. Los que quieres son los binarios de darwin (dicen Mac OS X en la descripción).

+0

No creo que estuviera claro, estoy buscando algo que pueda usar para compilar/interpretar lua script en el mac. Voy a editar mi pregunta. – RCIX

+3

Sí, estaba claro, exactamente: la fuente estándar de Lua lo hace. Simplemente descárgalo y compáralo o (estoy seguro) que puedes encontrar lua y luac prefabricados en algún lugar. –

+0

Hm ID en lugar de construir algo ya que no tengo la primera pista de por dónde empezar, supongo que sacar un látigo de google ... – RCIX

7

Mi forma favorita (de la cáscara):

sudo port install lua 

AMO macports!

+0

Para esto, por supuesto, necesitarás instalar MacPorts. Afortunadamente, eso es fácil: http://www.macports.org/install.php – adrian

+0

Voy a probar esto y espero que funcione ... – RCIX

+0

cuando lo ejecuto no hace nada, y tengo xcode + macports instalados. – RCIX

5

Aquí está mi sesión de terminal desde la compilación e instalación de Lua desde la fuente, básicamente siguiendo these directions. Ya tenía instaladas las herramientas de desarrollo de Apple, y/usr/local/bin ya estaba en mi PATH, así que pude omitir algunos de los pasos más tediosos y que llevaban mucho tiempo en las instrucciones.

$ cd ~/Downloads 

$ tar -xf lua-5.1.4.tar 

$ cd lua-5.1.4 

$ make macosx  
cd src && make macosx 
make all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-lreadline" 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lapi.o lapi.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lcode.o lcode.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o ldebug.o ldebug.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o ldo.o ldo.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o ldump.o ldump.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lfunc.o lfunc.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lgc.o lgc.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o llex.o llex.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lmem.o lmem.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lobject.o lobject.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lopcodes.o lopcodes.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lparser.o lparser.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lstate.o lstate.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lstring.o lstring.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o ltable.o ltable.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o ltm.o ltm.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lundump.o lundump.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lvm.o lvm.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lzio.o lzio.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lauxlib.o lauxlib.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lbaselib.o lbaselib.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o ldblib.o ldblib.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o liolib.o liolib.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lmathlib.o lmathlib.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o loslib.o loslib.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o ltablib.o ltablib.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lstrlib.o lstrlib.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o loadlib.o loadlib.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o linit.o linit.c 
ar rcu liblua.a lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o lstrlib.o loadlib.o linit.o 
ranlib liblua.a 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o lua.o lua.c 
gcc -o lua lua.o liblua.a -lm -lreadline 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o luac.o luac.c 
gcc -O2 -Wall -DLUA_USE_LINUX -c -o print.o print.c 
gcc -o luac luac.o print.o liblua.a -lm -lreadline 

$ make test 
src/lua test/hello.lua 
Hello world, from Lua 5.1! 

$ sudo make install INSTALL_TOP=/usr/local 
Password: 
cd src && mkdir -p /usr/local/bin /usr/local/include /usr/local/lib /usr/local/man/man1 /usr/local/share/lua/5.1 /usr/local/lib/lua/5.1 
cd src && install -p -m 0755 lua luac /usr/local/bin 
cd src && install -p -m 0644 lua.h luaconf.h lualib.h lauxlib.h ../etc/lua.hpp /usr/local/include 
cd src && install -p -m 0644 liblua.a /usr/local/lib 
cd doc && install -p -m 0644 lua.1 luac.1 /usr/local/man/man1 

$ lua 
Lua 5.1.4 Copyright (C) 1994-2008 Lua.org, PUC-Rio 
> print "Hi" 
Hi 
> = 2 + 3 
5 
> ^c 

$ cd test 

$ lua factorial.lua 
0! = 1 
1! = 1 
2! = 2 
3! = 6 
4! = 24 
5! = 120 
6! = 720 
7! = 5040 
8! = 40320 
9! = 362880 
10! = 3628800 
11! = 39916800 
12! = 479001600 
13! = 6227020800 
14! = 87178291200 
15! = 1307674368000 
16! = 20922789888000 
+0

¡Gracias! esa línea INSTALL_TOP lo hizo por mí. ¿Por qué se necesita esto aquí? – Pueggel

1

Sólo recientemente se encontró Rudix -a mantuvo colección de software precompilado Unix para Mac.

Aunque estoy seguro de que ya has descubierto una forma de instalar Lua, me encontré con tu pregunta buscando en Google lo mismo. Para cualquiera que esté interesado, here's the link to a recent Lua 5.1.4 dmg.

+0

En cuanto a Rudix, puede obtener más información sobre Running Lua en Mac OS X aquí: http://rudamoura.com/luaonmacosx.html – mohsinj

17

Mi forma preferida:

brew install lua 

Gracias, Max!

Y si lo que necesita saber cómo instalar Homebrew, ver http://mxcl.github.com/homebrew/ y:

/usr/bin/ruby -e "$(curl -fsSL https://raw.github.com/gist/323731)" 
2

Si no desea compilar sus propios binarios Lua, puede intentar ZeroBrane Studio Lua IDE, que viene empaquetado como un archivo. archivo dmg para OSX. Es un IDE que te permite editar y depurar tus scripts de Lua. Si recién está comenzando con Lua, también incluye más de 50 ejemplos y scripts de demostración, así como instrucciones integradas para ejecutarlos, para que no se enfrente a una pantalla vacía sin saber por dónde empezar.