Ich muss feststellen, welche Version von GTK + unter Ubuntu installiert ist
Der Mensch scheint nicht zu helfen
Dieser Vorschlag zeigt Ihnen, welche Nebenversion von 2.0 installiert ist. Verschiedene Hauptversionen haben unterschiedliche Paketnamen, da sie auf dem System nebeneinander existieren können (um Anwendungen zu unterstützen, die mit älteren Versionen erstellt wurden).
Selbst für Entwicklungsdateien, bei denen normalerweise nur eine Version auf dem System verfügbar ist, können Sie eine Version von gtk 1.x und eine Version von gtk 2.0 auf demselben System haben (die Include-Dateien befinden sich in Verzeichnissen mit der Bezeichnung gtk-1.2 oder gtk-2.0).
Kurz gesagt, es gibt keine einfache Antwort auf die Frage, welche GTK-Version auf dem System vorhanden ist. Aber...
Versuchen Sie etwas wie:
dpkg -l libgtk* | grep -e '^i' | grep -e 'libgtk-*[0-9]'
um alle libgtk-Pakete aufzulisten, einschließlich der -dev-Pakete, die sich auf Ihrem System befinden. dpkg -l
listet alle Pakete auf, die dpkg kennt, einschließlich solcher, die derzeit nicht installiert sind. Daher habe ich grep verwendet, um nur diejenigen aufzulisten, die installiert sind (Zeile beginnt mit i).
Alternativ und wahrscheinlich besser, wenn es sich um die Version der Header usw. handelt, an der Sie interessiert sind, verwenden Sie pkg-config:
pkg-config --modversion gtk+
Hier erfahren Sie, welche Version der GTK 1.x-Entwicklungsdateien installiert ist
pkg-config --modversion gtk+-2.0
wird Ihnen sagen, welche Version von GTK 2.0. Die alte 1.x-Version hat auch ein eigenes gtk-config-Programm, das dasselbe tut. Ähnliches gilt für GTK + 3:
pkg-config --modversion gtk+-3.0
libgtk*
indpkg -l libgtk*
hat in einfachen Anführungszeichen eingeschlossen werden (dpkg -l 'libgtk*'
) Wildcard - Erweiterung auf der Shell - Ebene zu verhindern.GTK3-Version erhalten:
oder nur Versionsnummer
quelle
Sie können diesen Befehl verwenden:
quelle
Sie können auch einfach das folgende Programm kompilieren und auf Ihrem Computer ausführen.
Kompilieren mit (vorausgesetzt, die obige Quelldatei heißt version.c):
Wenn Sie dies ausführen, erhalten Sie eine Ausgabe. Auf meinem alten eingebetteten Gerät wird Folgendes angezeigt:
quelle
--libs gtk+-3.0
stattdessen mit kompiliere , erhalte ich 3.10.8. Dies scheint mir nur zu sagen, dass ich Entwicklungsdateien für beide habe, aber nicht die, die ich gerade benutze.Versuchen,
oder,
quelle
Sie können auch einfach synaptic öffnen und nach libgtk suchen. Es zeigt Ihnen genau, welche lib installiert ist.
quelle
Das ist nicht so schwierig.
Überprüfen Sie einfach die Version Ihres gtk + Toolkit-Dienstprogramms vom Terminal aus:
quelle
Ich denke, ein verteilungsunabhängiger Weg ist:
gtk-config --version
quelle
Versuchen:
quelle
2
für3
.Dadurch erhalten Sie die Version der GTK + -Bibliotheken für GTK + 2 und GTK + 3.
Da Hauptversionen parallel installiert werden können, haben Sie möglicherweise beide auf Ihrem System, was mein Fall ist. Der obige Befehl gibt dies auf meinem Ubuntu Trusty-System zurück:
Dies bedeutet, dass ich GTK + 2.24.23 und 3.10.8 installiert habe.
Wenn Sie die Version der Entwicklungsdateien möchten, verwenden Sie diese
pkg-config --modversion gtk+-3.0
beispielsweise für GTK + 3. Um dies mit etwas Sed-Magie auf die verschiedenen Hauptversionen von GTK + zu erweitern, erhalten Sie Folgendes:quelle
Um die Antwort allgemeiner als Ubuntu zu machen (ich habe Redhat):
gtk wird normalerweise unter / usr installiert, möglicherweise jedoch an anderen Orten. Dies sollte in Umgebungsvariablen sichtbar sein. Überprüfen Sie mit
Versuchen Sie dann herauszufinden, wo Ihre GTK-Dateien gespeichert sind. Verwenden Sie zum Beispiel
locate
und grep.Auf diese Weise fand ich
/usr/lib64/gtk-2.0
, welches das Unterverzeichnis2.10.0
enthält, das viele .so-Bibliotheksdateien enthält. Mein Fazit ist, dass ich GTK + Version 2.10 habe. Dies steht ziemlich im Einklang mit dem Befehl rpm in Redhat:rpm -qa | grep gtk2
Ich denke, meine Schlussfolgerung ist richtig.quelle
Da
apt-cache policy
alle verfügbaren Übereinstimmungen aufgelistet werden, auch wenn sie nicht installiert sind, würde ich empfehlen, diesen Befehl für eine übersichtlichere Auswahlliste von GTK-bezogenen Paketen zu verwenden, die auf Ihrem System installiert sind:quelle