无法在Lua中要求socket.so。

我使用 Lua-5.1.3 和 luasocket-2.0.2。当我制作 socket.so 时一切正常。但是当我尝试使用 require socket.so 时,它失败了并给我这个错误:

./socket.so:undefined symbol:luaopen_socket.

由于我的知识有限,我不知道如何处理这个问题。你有什么建议吗?

点赞
用户3677376
用户3677376

你可以使用 nm socket.so 命令来检查实际存在哪些符号。我怀疑你会发现一个符号叫做 luaopen_socket_core(和/或 luaopen_mime_core),因为luasocket由多个Lua模块(如socket.luasocket/http.lua, …)和两个C模块(socket/core.somime/core.so)组成。为了让 require("socket") 起作用,你需要在 package.path 中的任意位置至少有一个 socket.lua 模块。

2014-12-10 11:08:39