Luajit:将字节码编译成对象格式

时间:2013-05-31 20:02:56

标签: linker lua luajit

关于 -b 选项的Luajit手册说:

  

从输出文件名的扩展名中自动检测输出文件类型:

     
      
  • c - C源文件,导出的字节码数据。
  •   
  • h - C头文件,静态字节码数据。
  •   
  • obj或o - 目标文件,导出的字节码数据(特定于操作系统和架构)。
  •   
  • raw或任何其他扩展名 - 原始字节码文件(可移植)。
  •   

将其编译为目标文件是什么意思?我知道它会生成一个文件,然后可以与从C或C ++代码生成的其他目标文件链接。

但这是如何运作的?如何使用其他C代码生成的目标文件?在哪种情况下你会这样做?

1 个答案:

答案 0 :(得分:3)

它将模块的字节码嵌入到常量数组中。

如果您从可执行文件或共享库导出此数组,require将能够在那里找到它(因此不需要搜索.lua源文件。)