问题描述
我需要确定在Ubuntu上安装了哪个版本的GTK +
男人似乎没有帮助
最佳解决思路
This suggestion将告诉您安装了哪个次要版本的2.0。不同的主要版本将具有不同的软件包名称,因为它们可以在系统上使用co-exist(以便支持使用旧版本构建的应用程序)。
即使对于通常只允许您在系统上拥有一个版本的开发文件,您也可以在同一系统上使用gtk 1.x版本和gtk 2.0版本(包含文件位于名为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-config:
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
次佳解决思路
$ dpkg -s libgtk2.0-0|grep '^Version'
第三种解决思路
得到GTK3版本:
dpkg -s libgtk-3-0|grep '^Version'
或只是版本号
dpkg -s libgtk-3-0|grep '^Version' | cut -d' ' -f2-
第四种思路
您也可以编译以下程序并在您的计算机上运行它。
#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`
当你运行它时,你会得到一些输出。在我的旧嵌入式设备上,我得到以下内容:
[root@n00E04B3730DF n2]# ./version
2.10.4
[root@n00E04B3730DF n2]#
第五种思路
尝试,
apt-cache policy libgtk2.0-0 libgtk-3-0
要么,
dpkg -l libgtk2.0-0 libgtk-3-0
第六种思路
你也可以打开synaptic并搜索libgtk,它会告诉你究竟安装了哪个lib。
第七种思路
尝试:
dpkg-query -W libgtk-3-bin