套接字 – 安装lua套接字时出错

我在
Linux系统中使用lua 5.1.我使用这个
manual安装了luasocket 2.0.2.但是当我执行下面的文件test.lua的代码时

socket = require("socket")
print(socket._VERSION)

我收到以下错误:

lua: ./usr/local/share/lua/5.1/socket.lua:14: loop or previous error loading module 'socket'

stack traceback:

    [C]: in function 'require'

    ./usr/local/share/lua/5.1/socket.lua:14: in main chunk

    [C]: in function 'require'

    test.lua:1: in main chunk

    [C]: ?

但我已将环境变量包括在内:

LUA_PATH=/usr/local/share/lua/5.1/?.lua;?.lua

LUA_CPATH=/usr/local/lib/lua/5.1/?.so;?.so

最佳答案 当您在require调用中有循环时,通常会出现此错误,例如,当您需要“socket”时,在第一次require调用完成之前,您需要再次使用“socket”.

检查socket.lua文件中的第14行.它可能应该有像本地socket = require(“socket.core”)(并且不需要(“socket”)).要检查问题是否与加载socket.core有关,请尝试在您自己的脚本中执行require“socket.core”,因为它可能会为您提供更好的错误消息.

点赞