Muszę ustalić, która wersja GTK + jest zainstalowana na Ubuntu
Wydaje się, że człowiek nie pomaga
Ta sugestia powie Ci, która wersja pomocnicza 2.0 jest zainstalowana. Różne wersje główne będą miały różne nazwy pakietów, ponieważ mogą współistnieć w systemie (w celu obsługi aplikacji zbudowanych na starszych wersjach).
Nawet dla plików deweloperskich, które normalnie pozwolą ci mieć tylko jedną wersję w systemie, możesz mieć wersję gtk 1.xi wersję gtk 2.0 w tym samym systemie (pliki nagłówkowe są w katalogach o nazwie gtk-1.2 lub gtk-2.0).
Krótko mówiąc, nie ma prostej odpowiedzi na pytanie „jaka wersja GTK jest w systemie”. Ale...
Spróbuj czegoś takiego:
dpkg -l libgtk* | grep -e '^i' | grep -e 'libgtk-*[0-9]'
aby wyświetlić wszystkie pakiety libgtk, łącznie z pakietami -dev, które są w twoim systemie. dpkg -l
wyświetli listę wszystkich pakietów, o których wie dpkg, łącznie z tymi, które nie są obecnie zainstalowane, więc użyłem grep, aby wyświetlić tylko te, które są zainstalowane (linia zaczyna się od i).
Alternatywnie, i prawdopodobnie lepiej, jeśli jest to wersja nagłówków itp., Która Cię interesuje, użyj pkg-config:
pkg-config --modversion gtk+
powie ci, jaka wersja plików programistycznych GTK 1.x jest zainstalowana, a
pkg-config --modversion gtk+-2.0
powie ci, która wersja GTK 2.0. Stara wersja 1.x ma również swój własny program gtk-config, który robi to samo. Podobnie w przypadku GTK + 3:
pkg-config --modversion gtk+-3.0
libgtk*
indpkg -l libgtk*
musi być ujęty w pojedyncze cudzysłowy (dpkg -l 'libgtk*'
), aby zapobiec rozwijaniu symboli wieloznacznych na poziomie powłoki.pobierz wersję GTK3:
lub tylko numer wersji
źródło
Możesz użyć tego polecenia:
źródło
Możesz także po prostu skompilować następujący program i uruchomić go na swoim komputerze.
skompiluj z (zakładając, że powyższy plik źródłowy nosi nazwę wersja.c):
Kiedy to uruchomisz, uzyskasz pewne wyniki. Na moim starym urządzeniu wbudowanym otrzymuję następujące informacje:
źródło
--libs gtk+-3.0
zamiast tego skompiluję , otrzymam 3.10.8. To po prostu wydaje mi się mówić, że mam pliki programistyczne dla obu, ale nie używam ich w tej chwili.Próbować,
lub,
źródło
To nie jest takie trudne.
Po prostu sprawdź wersję narzędzi gtk + toolkit z terminala:
źródło
Możesz także po prostu otworzyć synaptic i wyszukać libgtk, pokaże ci dokładnie, która biblioteka jest zainstalowana.
źródło
Myślę, że sposób niezależny od dystrybucji to:
gtk-config --version
źródło
Próbować:
źródło
2
przez3
.Spowoduje to uzyskanie wersji bibliotek GTK + dla GTK + 2 i GTK + 3.
Ponieważ główne wersje są instalowane równolegle, możesz mieć oba w swoim systemie, co jest moim przypadkiem, więc powyższe polecenie zwraca to w moim systemie Ubuntu Trusty:
Oznacza to, że mam zainstalowane GTK + 2.24.23 i 3.10.8.
Jeśli chcesz, to wersja plików deweloperskich, użyj
pkg-config --modversion gtk+-3.0
na przykład dla GTK + 3. Aby rozszerzyć to na różne główne wersje GTK +, z odrobiną magii seda, daje to:źródło
Aby odpowiedź była bardziej ogólna niż Ubuntu (mam Redhat):
gtk jest zwykle instalowany w / usr, ale prawdopodobnie w innych lokalizacjach. Powinno to być widoczne w zmiennych środowiskowych. Sprawdź z
Następnie spróbuj znaleźć miejsce przechowywania plików GTK. Na przykład użyj
locate
i grep.W ten sposób znalazłem
/usr/lib64/gtk-2.0
, który zawiera podkatalog2.10.0
zawierający wiele plików bibliotecznych .so. Mój wniosek jest taki, że mam GTK + w wersji 2.10. Jest to raczej zgodne z poleceniem rpm na Redhat:,rpm -qa | grep gtk2
więc myślę, że mój wniosek jest słuszny.źródło
Ponieważ
apt-cache policy
wyświetli listę wszystkich dostępnych dopasowań, nawet jeśli nie są zainstalowane, sugerowałbym użycie tego polecenia dla łatwiejszej w zarządzaniu krótkiej listy pakietów związanych z GTK zainstalowanych w twoim systemie:źródło