【问题标题】:Luarocks InstallationLuarocks 安装
【发布时间】:2017-05-10 20:04:54
【问题描述】:

我正在尝试安装从luarocks's official site 获得的最新版本的 Luarocks。首先,我使用了从 LuaForge Lua Binaries project 获得的 Lua 二进制文件,这些文件是从 Official Lua site 引用的。但是安装脚本返回以下错误(由于堆栈溢出限制导致输出拖尾):

LuaRocks 2.4.x installer.

========================
== Checking system... ==
========================

Admin privileges available for installing
Looking for Lua interpreter
    checking C:\Programs\Lua
       Found lua.exe, testing it...
Interpreter found, now looking for link libraries...
    checking for C:\Programs\Lua\lua5.3.lib
    checking for C:\Programs\Lua\lua53.lib
    checking for C:\Programs\Lua\lua5.3.dll
    checking for C:\Programs\Lua\lua53.dll
       Found lua53.dll
....................................................
Could not find Lua. See /? for options for specifying the location of Lua, or installing a bundled copy of Lua 5.1.

Failed installing LuaRocks. Run with /? for help.

然后我使用了另一个从 Lua - joedf's Builds 获得的 Lua 二进制文件,这些文件是从 Official Lua site 引用的。但是安装脚本返回以下错误(由于堆栈溢出限制导致输出拖尾):

LuaRocks 2.4.x installer.

========================
== Checking system... ==
========================

Admin privileges available for installing
Looking for Lua interpreter
    checking C:\Programs\Lua
       Found lua53.exe, testing it...
Interpreter found, now looking for link libraries...
    checking for C:\Programs\Lua\lua5.3.lib
    checking for C:\Programs\Lua\lua53.lib
    checking for C:\Programs\Lua\lua5.3.dll
    checking for C:\Programs\Lua\lua53.dll
       Found lua53.dll
Link library found, now looking for headers...
    checking for C:\Programs\Lua\include\lua\5.3\lua.h
    checking for C:\Programs\Lua\include\lua53\lua.h
    checking for C:\Programs\Lua\include\lua5.3\lua.h
    checking for C:\Programs\Lua\include\lua.h
    checking for C:\Programs\Lua\lua.h
    checking C:\Windows\system32\inetsrv
       Found lua53.exe, testing it...
Interpreter found, now looking for link libraries...
    checking for C:\Programs\Lua\lua5.3.lib
    checking for C:\Programs\Lua\lua53.lib
    checking for C:\Programs\Lua\lua5.3.dll
    checking for C:\Programs\Lua\lua53.dll
       Found lua53.dll
......................................................
Could not find Lua. See /? for options for specifying the location of Lua, or installing a bundled copy of Lua 5.1.

Failed installing LuaRocks. Run with /? for help.

然后我使用了另一个从 LuaDist 获得的 Lua 二进制文件,这些文件是从 official Lua site 引用的。它已经包含 luarocks,但版本较旧。使用此版本会导致以下错误:Orbit Installation Using Luarocks in Windows。所以,尝试安装 luarocks 的脚本。安装成功,我按照安装程序指令配置了以下变量(由于堆栈溢出限制导致拖尾输出):

............................................................ 
============================
== LuaRocks is installed! ==
============================

You may want to add the following elements to your paths;
Lua interpreter;
  PATH     :   C:\Programs\Binaries-LuaDist-batteries-0.9.8-Windows-x86\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.1\?.lua;%APPDATA%\LuaRocks\share\lua\5.1\?\init.lua
  LUA_CPATH:   %APPDATA%\LuaRocks\lib\lua\5.1\?.dll
System rocktree
  PATH     :   c:\programs\binaries-luadist-batteries-0.9.8-windows-x86\\bin
  LUA_PATH :   c:\programs\binaries-luadist-batteries-0.9.8-windows-x86\\share\lua\5.1\?.lua;c:\programs\binaries-luadist-batteries-0.9.8-windows-x86\\share\lua\5.1\?\init.lua
  LUA_CPATH:   c:\programs\binaries-luadist-batteries-0.9.8-windows-x86\\lib\lua\5.1\?.dll

Note that the %APPDATA% element in the paths above is user specific and it MUST
be replaced by its actual value.
For the current user that value is: C:\Users\Banee-Ishaque-K\AppData\Roaming.

但 luarocks 命令现在返回

windows 无法打开此文件

错误,怎么办?我正在使用 Windows 7 64 位,并且没有用于 Windows 的编译方法来手动编译 Lua 而不是使用二进制文件。

【问题讨论】:

  • 我试过 training-course-material.com/images/1/11/… 。但是,运气不好。
  • 看来修剪后的输出缺少关键部分,这些部分显示了究竟是什么不起作用。您能否链接到完整的输出,或者将它们粘贴到gist.github.com 等服务中?
  • 这是您要求的要点@ Hisham H M:gist.github.com/Baneeishaque/32281d9222c036075ce0158314ea0f17
  • @HishamHM 看起来 luarock 检测没有找到 lua.h。如果该要点的长度和内容是正确的,那么看起来整个系统中到处都有多个 lua 解释器/运行时。我建议删除所有这些并清理干净。有一个 lua 位置,岩石可以可靠地找到它。
  • 还有什么 C 编译器你有设置?您使用的是 mingw 还是 msvc (cl.exe)?

标签: lua luarocks


【解决方案1】:

解决方法是,只需使用 CMD 行参数 /LUA 指定 Lua 安装目录到 Luarocks 安装脚本(INSTALL.bat)文件。在上述情况下,

C:\Programs\luarocks-2.4.2-win32>install.bat /LUA C:\Programs\Binaries-LuaDist-batteries-0.9.8-Windows-x86 

将成功安装 Luarocks。 在 Win 7 64 位和 Lua 5.1 64 位以及 Luarocks 2.4.2 win32 包上测试和验证。

安装 Luarocks; Lua 解释器、链接库、头文件和运行时必须存在于系统中。来自 LuaForge Lua Binaries projectLua - joedf's Builds 的二进制文件仅包含 Lua 解释器和链接库。这就是前两种方法因错误而失败的原因。

LuaDist 获得的Lua 二进制文件包含Lua 解释器、链接库和头文件;运行时将在大多数用于开发目的的 Windows 系统中可用(如果没有,我们可以安装匹配(用于将 Lua 源代码编译为二进制的版本)Microsoft Visual C++ Redistributables from Microsoft website)。但是,问题是 ..\Binaries-LuaDist-batteries-0.9.8-Windows-x86\bin 在路径中。该文件夹仅包含 Lua 解释器。链接库和标头位于 ..\Binaries-LuaDist-batteries-0.9.8-Windows-x86 文件夹中。

【讨论】:

  • 不要添加 PATHEXT .LUA。它会导致windows can't open this file 错误。我不知道为什么会这样。
  • 我尝试使用 LuaDist distribution 中现有的 LuaRocks 安装 Luarocks。但是,没有成功。 Srf@SRF-PC C:\Users\Srf $ luarocks install luarocks Installing http://www.luarocks.org/repositories/rocks/luarocks-2.4.4-1.src.rock... Using http://www.luarocks.org/repositories/rocks/luarocks-2.4.4-1.src.rock... switching to 'build' mode Error: Failed unpacking rock file: C:\Users\Srf\AppData\Local\Temp\luarocks_luarocks-rock-luarocks-2.4.4-1-330/luarocks-2.4.4-1.src.rock
  • 我尝试使用 LuaRocks 2.4.4。现在 - 发生错误参数 #1 错误,上述解决方案不适用于 LuaRocks 2.4.4
  • 我想知道如何安装或使用来自luarocks.github.io/luarocks/releases的luarocks-3.1.3-windows-32.zip 中的2个exe文件
  • 使用 luarocks 二进制 exe 文件,只需将 exe 文件解压到任意文件夹,然后将该文件夹添加到您的路径变量中。
猜你喜欢
  • 1970-01-01
  • 2016-03-22
  • 2021-02-09
  • 2018-11-08
  • 2013-08-03
  • 2016-06-10
  • 2018-08-10
  • 2015-08-20
  • 2023-04-02
相关资源
最近更新 更多