安装了多个Lua版本,是否可以指定要将luarock安装到哪个版本?

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

原文链接 https://stackoverflow.com/questions/30362466

点赞
stackoverflow用户3677376
stackoverflow用户3677376

这不是命令行选项,但是如果你同时安装了针对不同 Lua 版本的 LuaRocks 命令行程序(如 luarocks-5.1luarocks-5.2),则可以使用。

你可以通过源码方式进行安装(假设你的系统为 Debian/Ubuntu 并且你有 lua5.1 可执行文件):

./configure --lua-version=5.1 --lua-suffix=5.1 --versioned-rocks-dir
# 确保已正确获取 Lua 可执行文件和包含目录
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 版本与否可能因版本不同而有所差异(例如 Debian/Ubuntu 软件包仅支持 Lua 5.1)。

2015-05-21 04:42:14
stackoverflow用户3307716
stackoverflow用户3307716

你可以使用 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/

2016-09-01 12:58:16