编译LuaSocket:无法打开文件:' string.h'

时间:2015-10-08 03:48:32

标签: lua luasocket luarocks

日志:

C:\WINDOWS\system32>luarocks install luasocket
Installing https://luarocks.org/luasocket-3.0rc1-2.src.rock...
Using https://luarocks.org/luasocket-3.0rc1-2.src.rock... switching to 'build' mode
cl /nologo /MD /O2 -c -Fosrc/mime.obj -Ic:/lua/include/ src/mime.c -DLUA_COMPAT_APIINTCASTS -DLUASOCKET_DEBUG -DNDEBUG -DLUASOCKET_API=__declspec(dllexport) -DMIME_API=__declspec(dllexport)
mime.c
src/mime.c(5): fatal error C1083: Cannot open include file: 'string.h': No such file or directory

Error: Build error: Failed compiling object src/mime.obj

我对整个LuaRocks事情都很陌生,所以我不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:1)

这是一本非完整指南,旨在帮助您开始从全新的Windows 7安装lua模块。

1)我们需要LuaRocks来自动安装Lua依赖项(类似于Perl中的cpan / cpanm或Python中的pip)。从这里抓取带有“-win32.zip”后缀的最新版本下载LuaRocks:http://keplerproject.github.io/luarocks/releases/

在撰写本文时,这是以下文件:http://keplerproject.github.io/luarocks/releases/luarocks-2.3.0-win32.zip

2)将其解压缩到一个新目录并使用install.bat /L进行安装。没有“/ L”标志,它会抱怨它无法找到您现有的Lua安装。使用该标志,它将只安装一个新的Lua二进制文件(版本5.1)。 LuaRocks现已安装到C:\Program Files (x86)\LuaRocks。您现在可以删除提取的“luarocks-2.3.0-win32”目录。

3)为了编译和安装模块,我们需要一个C ++编译器。从此处下载并安装Visual C ++ Build Tools 2015:http://landinghub.visualstudio.com/visual-cpp-build-tools

(我们希望这样,以便我们可以避免安装巨大的,数GB的Visual Studio 2015。)

4)导航至C:\Program Files (x86)\Microsoft Visual C++ Build Tools。右键单击“Visual C ++ 2015 x86 Native Build Tools命令提示符”,然后选择“以管理员身份运行”。

5)运行以下命令:"C:\Program Files (x86)\LuaRocks\luarocks.bat" install luasocket

请注意,您可能必须为某些模块安装其他内容。有时,模块根本无法在Windows上编译。