2008-09-24 164 views

回答

54

This suggestion會告訴你哪些的2.0次版本安裝。不同的主版本會有不同的軟件包名稱,因爲它們可以共存於系統中(以支持使用舊版本構建的應用程序)。

即使對於開發文件,通常只會讓系統上有一個版本,您也可以在同一個系統上安裝gtk 1.x版本和gtk 2.0版本(include文件位於目錄中gtk-1.2或gtk-2.0)。

因此,簡而言之,「GTK的版本是什麼」並不是一個簡單的答案。但是......

試着這麼做:

dpkg -l libgtk* | grep -e '^i' | grep -e 'libgtk-*[0-9]' 

列出所有的libgtk軟件包,包括那些-dev,那是你的系統上。 dpkg -l將列出dpkg知道的所有軟件包,包括當前未安裝的軟件包,因此我使用grep僅列出已安裝的軟件包(行以i開頭)。

或者,如果它是你感興趣的,使用pkg配置的頭部等的版本可能會更好:

pkg-config --modversion gtk+ 

會告訴你安裝了哪些版本的GTK 1.x的開發文件和

pkg-config --modversion gtk+-2.0 

會告訴你什麼版本的GTK 2.0。舊的1.x版本也有自己的gtk-config程序,它可以做同樣的事情。同樣,對於GTK + 3:

pkg-config --modversion gtk+-3.0 
+1

有關Windows的任何建議?如何在Windows上找到安裝的gtk版本? – 2013-05-02 12:47:38

+0

pkg-config程序是windows安裝的一部分。因此,在命令行中編寫pkg-config --modversion gtk + -2.0應該可以工作。 – pepan 2013-11-23 09:35:05

+0

很確定`dpkg -l libgtk *`中的`libgtk *`必須用單引號(`dpkg -l'libgtk *'`)括起來,以防止在shell級別進行通配符擴展。 – sevko 2015-07-24 16:01:16

22
$ dpkg -s libgtk2.0-0|grep '^Version' 
+0

這正在獲取GTK + 2的小版本,但GTK + 3已經出現多年,並且GTK + 4已經出現。 – liberforce 2017-12-05 16:50:21

1

我想分佈無關的方式是:

gtk-config --version

+1

儘管gtk-config獨立於分發版,但它僅適用於GTK 1.x.更新版本的正確方法是使用pkg-config,正如我在答案中所述。 – 2008-09-25 15:09:21

3

您也可以只開放突觸和搜索libgtk,它會告訴你到底是哪lib中是安裝。

20

GET GTK3版本:

dpkg -s libgtk-3-0|grep '^Version' 

或只是版本號

dpkg -s libgtk-3-0|grep '^Version' | cut -d' ' -f2- 
0

爲了使答案比Ubuntu的更普遍的(我有紅帽):

GTK通常安裝在/ usr下,但可能在其他位置。這應該在環境變量中可見。檢查與

env | grep gtk 

然後嘗試找到您的gtk文件的存儲位置。例如,使用locate和grep。

locate gtk | grep /usr/lib 

這樣,我發現/usr/lib64/gtk-2.0,其中包含子目錄2.10.0,其中包含許多.so庫文件。我的結論是,我有gtk +版本2.10。這與Redhat上的rpm命令相當一致:rpm -qa | grep gtk2,所以我認爲我的結論是正確的。

6

你也可以編譯下面的程序並在你的機器上運行它。

#include <gtk/gtk.h> 
#include <glib/gprintf.h> 

int main(int argc, char *argv[]) 
{ 
    /* Initialize GTK */ 
    gtk_init (&argc, &argv); 

    g_printf("%d.%d.%d\n", gtk_major_version, gtk_minor_version, gtk_micro_version); 
    return(0); 
} 

編譯(假設上面的源代碼文件名爲version.c):

gcc version.c -o version `pkg-config --cflags --libs gtk+-2.0` 

當你運行這個你會得到一些輸出。在我的舊嵌入式設備,我得到以下幾點:

[[email protected] n2]# ./version 
2.10.4 
[[email protected] n2]# 
4

嘗試,

apt-cache policy libgtk2.0-0 libgtk-3-0 

,或者

dpkg -l libgtk2.0-0 libgtk-3-0 
0

這將讓版本用於GTK + 2和GTK + 3的GTK +庫。

dpkg -l | egrep "libgtk(2.0-0|-3-0)" 

由於主要版本是並行安裝,可以將您的系統,這是我的情況上有兩個動作,所以上面的命令返回此我的Ubuntu忠實的系統上:

ii libgtk-3-0:amd64          3.10.8-0ubuntu1.6         amd64  GTK+ graphical user interface library 
ii libgtk2.0-0:amd64          2.24.23-0ubuntu1.4         amd64  GTK+ graphical user interface library 

這意味着我有GTK + 2.24.23和3.10.8安裝。

如果你想要的是發展的文件的版本,使用pkg-config --modversion gtk+-3.0例如用於GTK + 3.要延長到GTK +的不同主要版本,一些SED魔術,這給:

pkg-config --list-all | sed -ne 's/\(gtk+-[0-9]*.0\).*/\1/p' | xargs pkg-config --modversion 
相關問題