目标
完成 Windows 10 平台下的 Luarocks 3.0.2 编译安装。
环境
- Microsoft Windows 10 企业版 10.0.14393 版本 14393
方法
- 安装配置 MinGW。(MinGW 快捷安装方法参见Windows 平台 MinGW 安装)
- 编译安装 Lua。(Lua 编译安装方法参见Windows 下编译安装 Lua 5.3.5)
- 下载 Luarocks 源码。官方列表 此处选择 http://luarocks.github.io/luarocks/releases/luarocks-3.0.2-win32.zip
- 解压 luarocks-3.0.2-win32.zip 到
C:\local
- 在此路径下打开命令提示符,输入命令
install.bat /F /MW /LUA C:\local\lua-5.3.5\dist /P C:\local\LuaRocks-3.0.2 /NOADMIN /SELFCONTAINED /Q
参数说明(参照官网相关说明)
参数 | 作用 |
---|---|
/F | 如果安装目的地已经有过安装,强制覆盖 |
/MW | 使用 MINGW 编译 |
/LUA | 指定 lua 编译器所在路径 |
/P | 指定 luarocks 安装路径 |
/NOADMIN | 不使用管理员权限 |
/SELFCONTAINED | 将 luarocks 建立的各种目录集中到安装路径下 |
/Q | 不提示确认操作 |
- 上述命令运行成功后显示如图
文字版:
============================
== LuaRocks is installed! ==
============================
You may want to add the following elements to your paths;
Lua interpreter;
PATH : C:\local\lua-5.3.5\dist\bin
PATHEXT : .LUA
LuaRocks;
PATH : C:\Program Files (x86)\LuaRocks
LUA_PATH : C:\Program Files (x86)\LuaRocks\lua\?.lua;C:\Program Files (x86)\LuaRocks\lua\?\init.lua
Local user rocktree (Note: %APPDATA% is user dependent);
PATH : %APPDATA%\LuaRocks\bin
LUA_PATH : %APPDATA%\LuaRocks\share\lua\5.3\?.lua;%APPDATA%\LuaRocks\share\lua\5.3\?\init.lua
LUA_CPATH: %APPDATA%\LuaRocks\lib\lua\5.3\?.dll
System rocktree
PATH : c:\local\lua-5.3.5\dist\\bin
LUA_PATH : c:\local\lua-5.3.5\dist\\share\lua\5.3\?.lua;c:\local\lua-5.3.5\dist\\share\lua\5.3\?\init.lua
LUA_CPATH: c:\local\lua-5.3.5\dist\\lib\lua\5.3\?.dll
- 将
C:\local\LuaRocks-3.0.2
加入环境变量 ,成功后打开命令行输入where luarocks
会输出C:\local\LuaRocks-3.0.2\luarocks.bat
(环境变量设置方法参见Windows 10 设置环境变量) - 打开
C:\local\LuaRocks-3.0.2\config-5.3.lua
文件,将内容替换为以下内容(此处主要对各个编译器位置进行了设置,如果你的配置与这里不同,请对路径进行相应修改,格式参见官网说明):
rocks_trees = {
{ name = [[user]],
root = home..[[/luarocks]],
},
{ name = [[system]],
root = [[C:\local\LuaRocks-3.0.2\systree]],
},
}
variables = {
MSVCRT = 'm', -- make MinGW use MSVCRT.DLL as runtime
LUALIB = 'lua53.dll',
CC = [[C:\local\MinGW-16.0\MinGW\bin\gcc.exe]],
MAKE = [[C:\local\MinGW-16.0\MinGW\make.exe]],
RC = [[C:\local\MinGW-16.0\MinGW\bin\windres.exe]],
LD = [[C:\local\MinGW-16.0\MinGW\bin\gcc.exe]],
AR = [[C:\local\MinGW-16.0\MinGW\bin\ar.exe]],
RANLIB = [[C:\local\MinGW-16.0\MinGW\bin\ranlib.exe]],
}
verbose = false -- set to 'true' to enable verbose output
-
打开命令行,输入
luarocks install busted
,如果能正常安装(示例如图),则所有配置都正确。
-
将
C:\local\LuaRocks-3.0.2\systree\bin
加入环境变量,这样才能使用 luarocks 安装的可执行文件。例如上面安装的 busted 可以在命令行中直接输入busted
使用。输出为
0 successes / 0 failures / 2 errors / 0 pending : 0.0 seconds
Error 鈫?Cannot find file or directory: spec
Error 鈫?No test files found matching Lua pattern: _spec