Если установлено несколько версий Lua, можно ли указать, на какую из них установить luarock?

У меня в Linux установлены и Lua 5.1, и Lua 5.2. При использовании luarocks для установки пакета можно ли передать параметр luarocks, который указывает, для какой версии Lua должен быть установлен пакет?


person vfclists    schedule 21.05.2015    source источник


Ответы (2)


Это не параметр командной строки, но у вас могут быть разные варианты программы командной строки LuaRocks (luarocks-5.1 и luarocks-5.2), если вы установили LuaRocks для обеих версий Lua.

Вы можете сделать это из исходного кода, используя (при условии, что исполняемый файл lua5.1 похож на Debian/Ubuntu):

./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).

person siffiejoe    schedule 21.05.2015

Вы можете использовать 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/.

person Dhaval Kapil    schedule 01.09.2016