GTK設置及びテスト

5259 ワード

作者:disappearedgod
文章の出所:http://blog.csdn.net/disappearedgod/article/details/47021231
時間:2015-8-14
実験条件:unbuntu 14.04 LTS
実験期間:2015年8月14日
インストールコード
 sudo apt-get install build-essential
 sudo apt-get install gnome-core-devel
sudo apt-get install pkg-config
sudo apt-get install glade libglade2-devsudo 
apt-get install libgtk2.0-devsudo 
apt-get install gnome-devel gnome-devel-docs
いくつかの参考になる説明
$sudo apt-get install build-essential
2、libgtk 2.0-dev libglib 2.0-devなどの開発に関するライブラリファイルをインストールする。
$sudo apt-get install gnome-core-devel 
3、GTKプログラムをコンパイルする時に、自動的にヘッダファイルとライブラリファイルの位置を見つけるために使用します。
$sudo apt-get install pkg-config
4、devhelp GTK文書をインストールしてプログラムを見る
$sudo apt-get install devhelp
5、gtk/glibをインストールするAPI参照マニュアル及びその他のヘルプドキュメント
$sudo apt-get install libglib2.0-doc libgtk2.0-doc
6、GTKに基づくインターフェースGTKをインストールすることは、Gnomeウィンドウを開発するc/c++言語グラフィックスライブラリである。 
$sudo apt-get install glade libglade2-dev
  
$sudo apt-get install glade-gnome glade-common glade-doc
7、gtk 2.0をインストールするか、gtk+2.0に必要なすべてのファイルをダウンロードしてインストールしました。
$sudo apt-get install libgtk2.0-dev
  
$sudo apt-get install libgtk2.0*
注意すべき点があります。gcc/g+/gdb/makeなどの基本的なプログラミングツールをインストールします。
pkg-configのバージョンを確認します。
sudo apt-get install pkg-config
  設置に必要な組織:(root権限下で)
apt-get install gnome-devel gnome-devel-docs
テスト
#include 
void hello(GtkWidget *widget,gpointer data)
{
	g_print("Hello Ubuntu!
"); } gint delete_event(GtkWidget *widget,GdkEvent *event,gpointer data) { g_print ("delete event occurred
"); return(TRUE); } void destroy(GtkWidget *widget,gpointer data) { gtk_main_quit(); } int main( int argc, char *argv[] ) { GtkWidget *window; GtkWidget *button; gtk_init (&argc, &argv); window=gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_signal_connect (GTK_OBJECT(window),"delete_event",GTK_SIGNAL_FUNC(delete_event),NULL); gtk_signal_connect (GTK_OBJECT (window), "destroy",GTK_SIGNAL_FUNC (destroy), NULL); gtk_container_set_border_width (GTK_CONTAINER (window), 10); button = gtk_button_new_with_label ("Hello Ubuntu!"); gtk_signal_connect (GTK_OBJECT (button), "clicked",GTK_SIGNAL_FUNC (hello), NULL); gtk_signal_connect_object (GTK_OBJECT (button), "clicked",GTK_SIGNAL_FUNC (gtk_widget_destroy),GTK_OBJECT (window)); gtk_container_add (GTK_CONTAINER (window), button); gtk_widget_show (button); gtk_widget_show (window); /* */ gtk_main(); /* */ return(0); }
コンパイルとテスト:
$gcc -o Helloworld Helloworld.c `pkg-config --cflags --libs gtk+-2.0`
$./Helloworld
直接コマンド「gcc`pkg-config-cflags-libs gtk+2.0`hello.c-o hello」で上のコードをコンパイルすることができますが、Makefileファイルの内容は以下の通りです。
CC = gcc
all:
	$(CC) `pkg-config --cflags --libs gtk+-2.0` hello.c -o hello
そうすれば、makeコマンドでコンパイルできます。たくさん簡単にできますし、間違えにくいです。改めて強調したのは、引用符についての問題です。多くの初心者がこの間違いを犯します。これはLINUX SHELLのプログラミング中の命令引用に関連しています。LINUXの標準的なBASHは命令引用を支持しています。他のSHELLは必ずしもそうではありません。
次の図はそれぞれプログラムの実行時のウィンドウとHello Worldボタンをクリックしてポップアップするダイアログです。