Installation von lua5.2 vs. lua5.3 unter Ubuntu 16.10

11

Wenn ich das lua5.2Paket unter Ubuntu 16.10 installiere :

sudo apt-get install lua5.2

Es wird /usr/bin/luaals Symlink zu installiert /etc/alternatives/lua-interpreter, der wiederum ein Symlink zu `/usr/bin/lua5.2 ist.

Wenn ich das lua-5.3Paket installiere , werden keine Symlinks erstellt. Ich verstehe nur /usr/bin/lua5.3.

Die Ausgabe von dkg -L lua5.X, in der die Dateien aufgelistet sind, deren Eigentümer das Paket ist, ist für die Pakete lua5.2und identisch (abgesehen von den Versionsnummern einiger Dateien) lua5.3.

Ich möchte nur die neueste und beste Version von Lua installieren, die derzeit 5.3 ist, und sie #!/usr/bin/luain Skripten verwenden können.

Ich weiß, dass ich das umgehen kann, indem ich die Symlinks manuell erstelle oder den update-alternativesBefehl verwende (was ich noch nicht herausgefunden habe, aber das ist nicht das, wonach ich frage).

Meine Frage ist, warum das lua5.3Paket den Symlink nicht einrichtet, /usr/bin/luawenn ich ihn installiere, während das lua5.2Paket dies tut. Ist dies absichtlich, vielleicht eine Ubuntu-Richtlinie, oder ist es nur ein Versehen der Leute, die das Paket erstellt haben?

Keith Thompson
quelle

Antworten:

11

Weil der Paketbetreuer die alternativesInfrastruktur nicht bereitgestellt hat . Leider führt kein Weg daran vorbei, als es manuell einzurichten oder einfach nur einen Symlink /usr/bin/luazu /usr/bin/lua5.3.

Ich habe einen Fehlerbericht eingereicht: https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212

Bojan Markovic
quelle
14

Dies ist immer noch ein Problem in 18.04 Bionic. Problemumgehung:

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
fjarlq
quelle