将c和lua程序编译成单个可执行文件

时间:2017-11-26 06:50:40

标签: c lua compilation

我有一个用c和lua组合编写的程序。我知道如何编译c程序,我知道如何编译lua程序,但我不知道如何将混合程序编译成单个可执行程序。同样重要的是要注意我正在使用lua c api。

编辑:只是为了澄清,我不是以任何形式或形式使用lua解释器。

1 个答案:

答案 0 :(得分:3)

我最简单的方法是存储编程字符串,然后使用luaL_dostring()函数执行它。

我没有检查,但我非常确定您可以使用luac编译Lua代码并将其存储在char []缓冲区中,而不是存储脚本源代码。 这将通过在编译时(而不是在运行时)将源代码编译为Lua VM字节码一次来加快速度。

类似的东西:

const char *luacode = "print('Hello')";
lua_State *L;
...
...

   luaL_dostring (L, luacode);