UbuntuにインストールされているGTK +のバージョンを確認する必要があります
男は助けていないようです
この提案 は、2.0のどのマイナーバージョンがインストールされているかを示します。 (古いバージョンで構築されたアプリケーションをサポートするために)システム上に共存できるため、メジャーバージョンが異なるとパッケージ名も異なります。
通常はシステム上に1つのバージョンしか持てない開発ファイルでも、同じシステム上にgtk 1.xのバージョンとgtk 2.0のバージョンを持つことができます(インクルードファイルはgtk-1.2またはgtk-2.0)。
つまり、「システム上にあるGTKのバージョン」に対する簡単な答えはありません。しかし...
次のようなものを試してください:
dpkg -l libgtk* | grep -e '^i' | grep -e 'libgtk-*[0-9]'
-devパッケージを含む、システムにあるすべてのlibgtkパッケージをリストします。 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
また、シナプスを開いてlibgtkを検索するだけで、インストールされているlibを正確に表示できます。
試してください:
dpkg-query -W libgtk-3-bin
ディストリビューションに依存しない方法は次のとおりです。
gtk-config --version
これにより、GTK + 2およびGTK + 3のGTK +ライブラリのバージョンが取得されます。
dpkg -l | egrep "libgtk(2.0-0|-3-0)"
メジャーバージョンは並行してインストールできるため、システム上に両方がある場合があります。これは私の場合です。したがって、上記のコマンドは、Ubuntu Trustyシステム上でこれを返します。
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
答えをUbuntuよりも一般的なものにするには(Redhatがあります):
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
なので、私の結論は正しいと思います。