【问题标题】:With multiple versions of Lua installed is it possible to specify which one luarock to install to?安装了多个版本的 Lua 后,是否可以指定要安装到哪一个 luarock?
【发布时间】:2015-08-02 10:56:24
【问题描述】:

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

【问题讨论】:

    标签: lua conflicting-libraries luarocks


    【解决方案1】:

    不是命令行选项,但您可能有不同的 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 版本(例如,Debian/Ubuntu 包仅配置为 Lua 5.1)。

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-01-23
        • 2011-07-27
        相关资源
        最近更新 更多