下载lua
1) 这边用lua 5.1.5
exe文件
LuaBinaries - Browse /5.1.5/Tools Executables at SourceForge.net,下载lua-5.1.5_Win64_dll15_lib.zip
文件名解释:dll15表示vs2017的编译器,dllg4表示cygwin gcc4.x的编译器, dllw4表示4表示MingW gcc4的编译器
头文件,dll文件
LuaBinaries - Browse /5.1.5/Windows Libraries/Dynamic at SourceForge.net,下载lua-5.1.5_Win64_bin.zip
2) 将它们解压到相关文件夹
lua51.dll是为了兼容,仅仅将调用全部转给lua5.1.dll
3) 将exe所在的文件夹加到环境变量Path下
4) 检查lua是否可在命令行运行
下载luarocks
1) 下载地址
luarocks.github.io/luarocks/releases/,下载luarocks-3.11.1-windows-64.zip
2) 将其解压到相应文件夹
3) 将文件夹添加到环境变量
注意放在lua exe文件夹的上方,防止先调用lua内置的luarocks
4) 测试是否成功
环境变量添加成功了,但是luarocks配置有点问题
配置luarocks
- luarocks config -h, 可以查看配置的帮助说明
- 把默认版本设置为5.1
会在AppData下生成配置文件
- 设置lua文件夹
- 设置lua lib文件夹
- 设置lua lib头文件所在文件夹
安装第3方lua包(库)
有的lua包会需要编译,默认会用MingW,我们这边用vc编译器
打开vs2017的编译器命令行,因为上面都是用的x64架构的,所以也要打开x64的命令行
输入 luarocks install luasocket
dll文件生成路径:C:\Users\win\AppData\Roaming\luarocks\lib\lua\5.1\
lua文件生成路径:C:\Users\win\AppData\Roaming\luarocks\share\lua\5.1\
源码下载路径:C:\Users\win\AppData\Roaming\luarocks\lib\luarocks\
测试代码
package.path = package.path..";C:/Users/win/AppData/Roaming/luarocks/share/lua/5.1/?.lua" package.cpath = package.cpath..";C:/Users/win/AppData/Roaming/luarocks/lib/lua/5.1/?.dll"local socket = require("socket") print(socket._VERSION) local http = require("socket.http")-- 发起 GET 请求 local response_body, response_code, response_headers = http.request("http://httpbin.org/get")print("Response Code: " .. response_code) print("Response Body:") print(response_body)
运行结果
其他命令行参数
- 指定在哪个版本上config:
luarocks --lua-version 5.1 config variabls.LUA_LIBDIR c:\_softs\lua51_x64_lib
- 显示默认文件夹下已安装的lua包
- 显示指定文件夹下已安装的lua包
参考
lua以及luarocks的安装(windows10) - 知乎
Windows平台lua包管理工具luarocks的安装 - 哔哩哔哩
Lua 包管理 – Luarocks 使用指南 | 码农家园
luarocks 的基本使用 - 潼关路边的一只野鬼 - 博客园
关于luasocket的编译和部署_luasocket编译-CSDN博客