【问题标题】:Create new C library in lua在 lua 中创建新的 C 库
【发布时间】:2014-10-08 06:58:07
【问题描述】:

我想知道如何在 lua 5.2.3 中创建和使用新的 C 库。由于我在嵌入式系统上,我不能使用动态库(需要,共享库,...)。我找到了答案,但它适用于 lua 5.0 (http://www.lua.org/pil/26.2.html),因此不兼容。如果有人有想法?

【问题讨论】:

  • 就像你有共享对象一样编写它,但是将它与 lua 基础链接并在 lua-config-file 中为基础系统提供设置功能。

标签: lua embedded lua-5.2 lua-api


【解决方案1】:

编辑linit.c 并将您的库入口点添加到其中。然后将修改后的linit.c 添加到您的项目中。链接器将使用您的副本,而不是 Lua 库中的副本。

这假设您的应用调用luaL_openlibs

【讨论】:

  • 我还有一个问题。我制作了一个脚本 lua,在其中我从我的新库中调用其中一个函数。我想我需要在脚本和lua源之间添加一个链接,比如require。但我不知道,require 似乎不是答案。
【解决方案2】:

Lua 5.2 与 5.1/5.0 相比有一些 API 更改——因此请使用 reference for 5.2.3 instead。你也可以购买Programming in Lua 3rd edition for 5.2,它已经更新了示例。

【讨论】:

    猜你喜欢
    • 2018-03-22
    • 2012-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多