Lua:使用当地安装的岩石(或.zip / .tar.gz)使用luarocks安装岩石

时间:2012-09-03 19:33:38

标签: lua luarocks

我一直在寻找,但我无法确定这是否可能。

基本上,http://luarocks.org已关闭,我已在本地本地安装了另一台计算机上的luafilesystem副本。使用Ruby,可以在本地使用'gem'命令交叉安装ruby gems。我想知道是否有可能与岩石和luarocks相同。

有没有办法通过使用该摇滚的另一个本地安装来“交叉安装”摇滚(例如,luafilesystem)?

类似的东西:

luarocks install //10.0.1.123/machine/path/to/luafilesystem/on/other/machine

是我希望能够做到的。

更新:我甚至对如何从.tar.gz或.zip安装摇滚乐感到满意,例如,如果我从this location下载了一张图片(在LuaFileSystem的情况下) 。

在这种情况下,安装的“来源”将是/可能是机器的本地,而不是远程(并且不一定已经安装为摇滚)。

3 个答案:

答案 0 :(得分:22)

如果您有源zip,可以将其解压缩并将luarocks指向rockspec文件。这是我从源头安装“破坏”的方式。

git clone https://github.com/Olivine-Labs/busted.git
luarocks install busted/busted-1.3-1.rockspec

或直接从源

安装
cd busted
luarocks make

答案 1 :(得分:5)

LuaRocks有一个pack子命令,它将创建一个二进制摇滚(包含已安装模块的所有文件的zip文件)。考虑到架构匹配,您可以使用该二进制摇滚在另一台计算机上安装相同的模块。

E.g。

luarocks pack luafilesystem

在我的机器上生成luafilesystem-1.6.2-2.linux-x86_64.rock

luarocks install luafilesystem-1.6.2-2.linux-x86_64.rock

将重新安装luafilesystem,无需连接互联网。

答案 2 :(得分:5)

如果有人想从本地源摇滚进行安装。

这样做:

cd /path/to/source-rock
luarocks make source-rock.rockspec

注意:

使用 make 代替install。原因是here(引用如下)。

  
    

LuaRocks提供了这个:

         

make使用rockspec编译当前目录中的包。

         

install安装一块石头。

         

但是,install不使用当前的品牌。它尝试     从服务器下载并重新编译相同的包     我在当地定制的那个。

         

任何方式围绕这个?

  
     

make命令实际上会构建并安装您自定义的   rockspec。糟糕的命名选择会不时引起混淆,   我知道。