Geben Sie apt-get eine zu installierende Mindestversion an

Geben Sie apt-get eine zu installierende Mindestversion an

Sie können eine bestimmte Version zur Installation eines Pakets folgendermaßen angeben: apt-get install pkg=version.

Aber können Sie eine Mindestversion angeben?

Ich möchte beispielsweise mindestens gcc 8, aber gcc 9 ist für mich ok.

So etwas wie das hier (funktioniert offensichtlich nicht):apt-get install pkg>=version

Antwort1

Seit Apt 1.9 (veröffentlicht am 17. Juni 2019) können Sie apt(-get) satisfyFolgendes verwenden:

sudo apt-get satisfy "foo (>= 1.0), bar (>= 2.0)"

Die Syntax der Abhängigkeitszeichenfolge wird hier beschrieben:

https://www.debian.org/doc/debian-policy/ch-relationships.html#syntax-of-relationship-fields

Antwort2

aptDie Paketoptionen ermöglichen dem Benutzer, zwischen den verschiedenen Versionen eines aptbekannten Pakets auszuwählen. Sie ermöglichen dem Benutzer nicht, allgemeine Paketbeschränkungen anzugeben.

Der einfachste Weg, Ihr Ziel zu erreichen, ist die Verwendung von equivs. Schreiben Sie beispielsweise Folgendes in eine Datei mingcc:

Section: devel
Priority: optional
Standards-Version: 4.5.0

Package: gcc-8-or-later
Depends: gcc (>= 4:8)
Description: dependency package ensuring GCC 8 or later is installed
 This meta-package ensures that GCC 8 or later is installed.

Erstellen Sie dann das Paket:

equivs-build mingcc

Dadurch wird ein Paket generiert, gcc-8-or-later_1.0_all.debentweder im aktuellen Verzeichnis oder in $TMP. Sie können es mit installieren apt:

apt install ./gcc-8-or-later_1.0_all.deb

Die Installation funktioniert nur, wenn GCC 8 oder höher verfügbar ist.

(Die gccMetapakete in Debian und Ubuntu verwenden eine Epoche, derzeit bei 4, daher >= 4:8.)

verwandte Informationen