LuaRocks LuaSocket 安装失败

LuaRocks LuaSocket failed install

免责声明:另一个用户在这里提出了类似的问题,但从未得到回答。也许这次会不一样。

我正在尝试安装 Copas,但依赖项之一是 LuaSocket。但是,当我尝试安装 LuaSocket 时,出现以下错误:

src/wsocket.c: In function 'socket_gaistrerror':
src/wsocket.c:417:14: error: 'ERROR_NOT_ENOUGH_MEMORY' undeclared (first use in this function)
         case EAI_MEMORY: return "memory allocation failure";
              ^
src/wsocket.c:417:14: note: each undeclared identifier is reported only once for each function it appears in

Error: Build error: Failed compiling object src/wsocket.o

我试过下载 rockspec 并在那里安装它,我试过 luarocks 站点以及 github 站点,我试过不同的版本。我的 Lua 编译器是 Lua for Windows 并且 Lua 版本是 5.1。我正在为 C 编译器使用 MinGW。所有这些都在 Windows 10 笔记本电脑上。

好像和你使用的mingw版本有关; this discussion curl 中的相同错误可能有助于确定问题和建议 resolution/workaround。从讨论看来,添加 -DENABLE_INET_PTON=OFF 或使用 MinGW64-w64 v7+ 可能会解决问题。

另外,Windows 的 Lua 应该已经包含了 luasocket,所以我不确定为什么需要编译它。