Когда я устанавливаю lua5.2
пакет на Ubuntu 16.10:
sudo apt-get install lua5.2
это устанавливает /usr/bin/lua
как символьная ссылка на /etc/alternatives/lua-interpreter
, который в свою очередь является символьной ссылкой на '/usr/bin/lua5.2.
Когда я устанавливаю lua-5.3
пакет, это не создает символьные ссылки; я только добираюсь /usr/bin/lua5.3
.
Вывод dkg -L lua5.X
, то, которое перечисляет файлы, принадлежавшие пакету, идентично (кроме номеров версий на некоторых файлах) для lua5.2
и lua5.3
пакеты.
То, что я хочу сделать, просто установить последнюю и самую большую версию Lua, который в настоящее время является 5.3, и смочь использовать #!/usr/bin/lua
в сценариях.
Я знаю, что могу работать вокруг этого путем создания символьных ссылок вручную или при помощи update-alternatives
команда (который я еще не выяснил, но это не то, что я спрашиваю о).
Мой вопрос, почему делает lua5.3
пакет, не настроенный /usr/bin/lua
символьная ссылка, когда я устанавливаю его, в то время как lua5.2
пакет делает? Это является преднамеренным, возможно, политика Ubuntu, или это - просто контроль людьми, которые создали пакет?
Поскольку специалист по обслуживанию пакета не обеспечил alternatives
инфраструктура. К сожалению, никакой путь вокруг этого, но настраивать его вручную или просто символьная ссылка /usr/bin/lua
к /usr/bin/lua5.3
.
я отправил отчет об ошибках: https://bugs.launchpad.net/ubuntu / + source/lua5.3 / + ошибка/1707212
Это - все еще проблема в 18.04 Бионических. Обходное решение:
sudo update-alternatives --install /usr/bin/lua lua-interpreter \
/usr/bin/lua5.3 130 --slave /usr/share/man/man1/lua.1.gz \
lua-manual /usr/share/man/man1/lua5.3.1.gz
sudo update-alternatives --install /usr/bin/luac lua-compiler \
/usr/bin/luac5.3 130 --slave /usr/share/man/man1/luac.1.gz \
lua-compiler-manual /usr/share/man/man1/luac5.3.1.gz