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

Linker Luajit:将字节码编译为对象格式,linker,lua,luajit,Linker,Lua,Luajit,关于-b选项的Luajit手册上说: 从输出文件名的扩展名自动检测输出文件类型: c-c源文件,导出字节码数据 h-C头文件,静态字节码数据 obj或o对象文件,导出字节码数据(特定于操作系统和体系结构) 原始或任何其他扩展名-原始字节码文件(可移植) 将其编译为对象文件意味着什么?我知道它产生一个文件,它可以与C或C++代码生成的其他对象文件链接。p> 但是这是如何工作的呢?如何使用从其他C代码生成的对象文件?在哪种情况下,您会这样做?它将模块的字节码嵌入到常量数组中 如果随后从可执行文件

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

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

  • c-c源文件,导出字节码数据
  • h-C头文件,静态字节码数据
  • obj或o对象文件,导出字节码数据(特定于操作系统和体系结构)
  • 原始或任何其他扩展名-原始字节码文件(可移植)
将其编译为对象文件意味着什么?我知道它产生一个文件,它可以与C或C++代码生成的其他对象文件链接。p>
但是这是如何工作的呢?如何使用从其他C代码生成的对象文件?在哪种情况下,您会这样做?

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

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