Lua的C语言扩展如何实现跨平台兼容?

2026-04-27 18:501阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计345个文字,预计阅读时间需要2分钟。

Lua的C语言扩展如何实现跨平台兼容?

我正在寻找一种方法将Lua嵌入到我的跨平台嵌入式应用程序中。问题是——在这个平台上我没有找到任何完整、稳定、有效的Lua实现。我尝试了以下(这里是指数据库列表及其问题):LuaInterface

我正在寻找一种方法将Lua嵌入到我的跨平台嵌入应用程序中.问题是 – 我没有在这个平台上找到任何完整,稳定,有效的Lua实现.我尝试了以下(这里是存储库列表及其问题):

> LuaInterface – 要求我为每个平台编译一个dll,不稳定,因为v2使用Windows
> KopiLua – 错误,即使是他们自己的样本也不起作用
> AluminiumLua – 依赖于DLL,因此,不是实现
> NLua – 基于KopiLua并继承了所有问题
> UniLua – ……这是团结的

Lua的C语言扩展如何实现跨平台兼容?

此外,当我进行简单的测试时,大多数这些实现都失败了:

for(i=0;i<100000;i) Lua.CallSomeFunctionFromLua()

它不时会调用错误,尤其是在KopiLua和LuaInterface上.

问题是:在C#中是否有任何完整,稳定的Lua实现,没有任何平台依赖性?

如果你找不到优秀的lua实现的纯C#库,试着给 luabind一个机会正如文档中所述,它是可移植的.您可以在luabind和您的框架之间建立C/C++LI接口,如 here所说.这是非常危险的想法,但您将对发生的事情有深度控制.由于luabind是C Lua的C包装器,因此在C#上实现接口并不会太难.

本文共计345个文字,预计阅读时间需要2分钟。

Lua的C语言扩展如何实现跨平台兼容?

我正在寻找一种方法将Lua嵌入到我的跨平台嵌入式应用程序中。问题是——在这个平台上我没有找到任何完整、稳定、有效的Lua实现。我尝试了以下(这里是指数据库列表及其问题):LuaInterface

我正在寻找一种方法将Lua嵌入到我的跨平台嵌入应用程序中.问题是 – 我没有在这个平台上找到任何完整,稳定,有效的Lua实现.我尝试了以下(这里是存储库列表及其问题):

> LuaInterface – 要求我为每个平台编译一个dll,不稳定,因为v2使用Windows
> KopiLua – 错误,即使是他们自己的样本也不起作用
> AluminiumLua – 依赖于DLL,因此,不是实现
> NLua – 基于KopiLua并继承了所有问题
> UniLua – ……这是团结的

Lua的C语言扩展如何实现跨平台兼容?

此外,当我进行简单的测试时,大多数这些实现都失败了:

for(i=0;i<100000;i) Lua.CallSomeFunctionFromLua()

它不时会调用错误,尤其是在KopiLua和LuaInterface上.

问题是:在C#中是否有任何完整,稳定的Lua实现,没有任何平台依赖性?

如果你找不到优秀的lua实现的纯C#库,试着给 luabind一个机会正如文档中所述,它是可移植的.您可以在luabind和您的框架之间建立C/C++LI接口,如 here所说.这是非常危险的想法,但您将对发生的事情有深度控制.由于luabind是C Lua的C包装器,因此在C#上实现接口并不会太难.