Necesito ayuda compilando un script de lua.
Estoy tratando de usar el Xtreamlua-compile, pero me dice : error : File/path already open.
Alguien sabe que puedo hacer?
Conocen otro compilador de LUA HMv7?
Saludos
Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderas trucos para resolver tus dudas antes.
No preguntes por MP, mejor pregunta aquí.
Lua es un lenguaje
Lua es un lenguaje interpretado, no hace falta compilarlo.
Compilarlo quiere decir
Compilarlo quiere decir "ocuptarlo" para que nadie pueda verlo
el interno de lua
usa string.dump("") interno de lua.
te pide una función de entrada, en este caso, realiza lo siguiente (las funciones no sé si estarán correctamente, mira la que esté mal y corrigela, pero se llamará algo parecido)
filename = "carpeta/archivo_a_compilar.lua";
filehandle = io.open(filename,"r");
innertext = filehandle:read("*a");
filehandle:close();
filehandle = nil;
outtext = 'function kupopo ' .. innertext .. ' end ';
assert(loadstring(outtext))();
filehandle = io.open('compiled_' .. filename,"w");
filehandle:write(string.dump(kupopo));
filehandle:flush();
filehandle:close();
filehandle = nil;
Actualmente desarrollando nuestra web y UXCode : http://www.gcrew.es
Me lo explicarias...
Un poco más, esque nunca he usado esa funcion...
Saludos
codigo comentado:
-- especificamos el archivo a compilar.
filename = "carpeta/archivo_a_compilar.lua";
--lo leemos todo y lo guardamos en innertext.
filehandle = io.open(filename,"r");
innertext = filehandle:read("*a");
filehandle:close();
filehandle = nil;
-- le añadimos la cabecera de una función.
outtext = 'function kupopo ' .. innertext .. ' end ';
-- lo ejecutamos, para que se guarde como función y no como string.
assert(loadstring(outtext))();
-- abrimos el archivo de salida, y guardamos el resultado de string.dump(funcion)
filehandle = io.open('compiled_' .. filename,"w");
filehandle:write(string.dump(kupopo));
filehandle:flush();
filehandle:close();
filehandle = nil;
--string.dump(funcion) devuelve una copia en version binaria
--de dicha función, o sease, su versión compilada.
Actualmente desarrollando nuestra web y UXCode : http://www.gcrew.es
Muchas ...
Gracias por la ayuda dev,
Saludos
de nases
de nah hombre. espero k te haya servido :)