编译嵌入式解释器的lua模块

我有一个嵌入在exe中的lua解释器,Lua 5.1.5,x64。没有exe的源代码。我可以通过提供.lua脚本自由地与它交互,但我想使用自己的C模块。没有任何与exe一起的lua.dll或类似的模块,因此我无法构建dll。使用来自官方网站的lua库构建模块时,编译可以正常工作,但我必须提供lua5.1.dll以便能够加载它。要求后,应用程序挂起(可能是因为内部lua函数和lua5.1.dll之间的冲突)。

我正在使用mingw64,编译选项:

gcc test.cpp -c
gcc -O -shared -o test.dll test.o -L ..\lua51_64\ -llua5.1

我无法在不链接lua5.1.dll的情况下构建模块。

是否可能为lua构建一个C模块,以便模块使用来自exe的lua函数,而不是使用独立dll的函数?

点赞