lua包管理器luarocks使用

下载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, 后面会用vc来编译代码

  文件名解释: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博客

 

posted @ 2025-02-10 00:02  yanghui01  阅读(701)  评论(0)    收藏  举报