我已经用make posix在Debian x86-64上编译了Lua 5.2,并尝试使用gcc -ldl -llua main.c命令编译以下内容

#include "lua.h"
#include "lauxlib.h"
#include "lualib.h"
int main() {
  lua_State *L = luaL_newstate();
  luaL_openlibs(L);
  dofile("test.lua");
  return 0;
}

并获得对lua函数的 Unresolved 引用

最佳答案

假设您的错误是

undefined reference to `dofile'

那么你的问题是dofile是lua函数而不是C函数。

您可能需要luaL_dofile(L, "test.lua")

关于c - 无法在Linux上链接Lua库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19941127/

10-11 16:25