Lua5.3和LuaL_openlib发生错误

当我尝试使用Lua5.3来要求LuaSocket时,我遇到了以下错误

从文件加载模块“socket.core”时发生错误 '/usr/local/lib/lua/5.3/socket/core.so': /usr/local/lib/lua/5.3/socket/core.so:未定义的符号:luaL_openlib


带演示的控制台输出:

barreeeiroo@Telegram ~/mattata-ai> lua
Lua 5.2.4 版权所有(C) 1994-2015 Lua.org,PUC-Rio
> local socket = require("socket.core")
> ^C⏎
barreeeiroo@Telegram ~/mattata-ai> lua5.3
Lua 5.3.3 版权所有(C) 1994-2016 Lua.org,PUC-Rio
> local socket = require("socket.core")
从文件'/usr/local/lib/lua/5.3/socket/core.so'中加载模块'socket.core'时出错:
        /usr/local/lib/lua/5.3/socket/core.so:未定义的符号:luaL_openlib
堆栈追踪:
        [C]:在?
        [C]:在函数'require'stdin:1:在主要块中
        [C]:在?
> ^C⏎
barreeeiroo@Telegram ~/mattata-ai> readelf -a /usr/bin/lua | grep openlib
   109: 0000000000018a70   163 FUNC    GLOBAL DEFAULT   15 luaL_openlib@@LUA_5.2
   240: 0000000000018b20   117 FUNC    GLOBAL DEFAULT   15 luaL_openlibs@@LUA_5.2
barreeeiroo@Telegram ~/mattata-ai> readelf -a /usr/bin/lua5.3 | grep openlib
   238: 000000000001b330    85 FUNC    GLOBAL DEFAULT   15 luaL_openlibs@@LUA_5.3

如何使luaL_openlib在Lua5.3上运行?

点赞
用户13096148
用户13096148

我遇到了同样的问题,并通过此链接解决:https://luarocks.org/

我的问题是我正在使用lua 5.3,而我的luarocks正在下载适用于lua 5.1的模块。

2020-03-20 17:43:01