gpt4 book ai didi

c# - 如何在 Mono/Linux 上使用 LuaInterface

转载 作者:太空狗 更新时间:2023-10-29 22:21:03 25 4
gpt4 key购买 nike

当我尝试使用 LuaInterface 时在 Linux 上的 Mono 上(在 Ubuntu 9.04 上使用 Mono 2.0)我得到以下异常:

** (App.exe:8599): WARNING **: Method ':.DoDllLanguageSupportValidation ()' in assembly '/home/ulrich/test/Debug/lua51.dll' contains native code that cannot be executed by Mono on this platform. The assembly was probably created using C++/CLI.

根据 this web site LuaInterface 可以与 Mono 一起使用。 MoMA也这么说。

是否可以重新编译 lua51.dll 使其与 Mono 兼容?

最佳答案

LuaInterface 看起来是纯 C#,但它使用 混合模式 C++/CLI 化版本的 Windows 版本的 native Lua 库,它混合了 .NEt 代码和 native 32 位 Windows代码。没有适用于 Windows 以外的平台的 C++/CLI 编译器,因此您无法移植/重新编译 C++/CLI 代码,尽管它应该可以在 Win32(或者可能是 Wine)上的 Mono 上工作。

让它在 Mono 上运行的唯一真正可行的方法是让它使用 P/Invokes 代替 C++/CLI。然后你可以使用 dllmap因此,当 Mono 尝试解析对 lua51.dll 的 P/Invoke 调用时,它会被重定向到 Linux 等效项 liblua.so.5.1。

关于c# - 如何在 Mono/Linux 上使用 LuaInterface,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1533799/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com