c - 在c中嵌入lua代码

标签 c lua

我正在尝试遵循给定的基本指南 here关于将 lua 嵌入到 C 中。我将代码逐字复制到我自己的 embed.c 文件中并执行列出的确切编译器命令:

cc -o embed embed.c \
            -I/usr/local/include \
            -L/usr/local/lib \
            -llua -llualib

我得到错误:

embed.c:19:14: error: invalid storage class for function ‘openlualibs’

之后我将函数移到 main 之外,再次编译,得到:

/usr/bin/ld: cannot find -llualib

我不知道为什么我不能编译它。 lua安装正确。还有其他人遇到过这些问题吗?如果这是一个糟糕的教程,请随时将我引导到一个连击教程。

最佳答案

在某些 Linux 发行版上,您可能需要安装 lua-devel (或类似命名的)包,以获得针对包编译和链接项目所需的正确头文件和库符号链接(symbolic link)。如果你有 liblualib-<version>.so.<version> ,例如 liblualib-5.so.5.0 ,您可能需要安装开发包。

从 lua 5.1 开始,liblualib不存在。这是发布公告:http://lua-users.org/lists/lua-l/2005-05/msg00186.html

关于c - 在c中嵌入lua代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11728128/

相关文章:

c - c 系统的模块化

c - GDB:有没有一个命令可以让你看到一个函数被调用了多少次?

lua - 当 key 正确时,OpenAI API 返回 "unauthorized"错误

c++ - 与项目一起构建 Lua 脚本

android - 是否只能使用 Lua 为 Android 开发应用程序?

Lua fork 并发进程

c - Malloc 和 Realloc 的关系,当所需空间在内存中不可用时如何处理

c++ - Busy-waiting和定时器中断在编程中的优缺点是什么?

c - gcc:C 中未声明的变量,但已声明

memory-leaks - Lua 中是否收集了数字、 bool 值或 nils 垃圾?