在安装了多个Lua版本的情况下,是否可以指定要将Luarock安装到哪一个版本?

7

我在Linux上安装了Lua 5.1Lua 5.2。使用luarocks安装软件包时,是否可以向luarocks传递选项以指定应该安装rock的Lua版本?

2个回答

3
您可以使用 luaver 来安装、管理和在不同版本的 lua 和 luarocks 之间切换。
要安装 luaver,请运行以下命令:

curl https://raw.githubusercontent.com/dhavalkapil/luaver/master/install.sh -o install.sh && . ./install.sh

然后,您可以按如下方式安装和使用多个 lua 版本:

luaver install 5.3.1 # 安装 lua 版本 5.3.1

luaver install 5.3.0 # 安装 lua 版本 5.3.0

luaver use 5.3.1 # 切换到 lua 版本 5.3.1

更多详情请参见https://dhavalkapil.com/luaver/

3

虽然不是命令行选项,但你可能有不同版本的LuaRocks命令行程序可用(luarocks-5.1luarocks-5.2),如果你同时为两个Lua版本安装了LuaRocks。

你可以使用以下方法从源代码安装(假设你有一个类似Debian/Ubuntu的lua5.1可执行文件):

./configure --lua-version=5.1 --lua-suffix=5.1 --versioned-rocks-dir
# make sure that you got the correct Lua executable and include directory
sudo make bootstrap

同样适用于Lua 5.2。

如果configure的自动检测未找到正确的可执行文件/目录,则以下标志可能有所帮助:

  • --with-lua-bin=DIR(安装Lua可执行文件的目录)
  • --with-lua-include=DIR(Lua包含文件所在的目录)
  • --with-lua-lib=DIR(在Linux上可能不需要此选项)

完成上述步骤后,luarocks-5.1 install some-package为Lua 5.1安装给定的软件包,luarocks-5.2 install some-package将安装相同的软件包,但针对的是Lua 5.2。

如果通过软件包管理器安装了LuaRocks,则可以支持多个Lua版本,也可能不支持多个Lua版本(例如Debian / Ubuntu软件包仅配置为Lua 5.1)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接