【发布时间】:2015-08-02 10:56:24
【问题描述】:
我在 Linux 上安装了 Lua 5.1 和 Lua 5.2。使用luarocks 安装包时,是否可以将选项传递给 luarocks,指定应该为哪个版本的 Lua 安装 rock?
【问题讨论】:
标签: lua conflicting-libraries luarocks
我在 Linux 上安装了 Lua 5.1 和 Lua 5.2。使用luarocks 安装包时,是否可以将选项传递给 luarocks,指定应该为哪个版本的 Lua 安装 rock?
【问题讨论】:
标签: lua conflicting-libraries luarocks
不是命令行选项,但您可能有不同的 LuaRocks 命令行程序变体可用(luarocks-5.1 和 luarocks-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 版本(例如,Debian/Ubuntu 包仅配置为 Lua 5.1)。
【讨论】:
您可以使用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
【讨论】: