一、基本安装(参考“ranchunfeng”的 ubuntu gtk安装)
sudo apt-get install vim //使用vim来编写代码,当然您可以使用任何自己喜欢的编辑器
sudo apt-get install build-essential //这将安装gcc/g++/gdb/make 等基本编程工具
sudo apt-get install gnome-core-devel //这将安装 libgtk2.0-dev libglib2.0-dev 等开发相关的库文件
sudo apt-get install pkg-config //用于在编译GTK程序时自动找出头文件及库文件位置
sudo apt-get install devhelp //这将安装 devhelp GTK文档查看程序
sudo apt-get install libglib2.0-doc libgtk2.0-doc //这将安装 gtk/glib 的API参考手册及其它帮助文档
sudo apt-get install glade libglade2-dev //这将安装基于GTK的界面GTK是开发Gnome窗口的c/c++语言图形库。
sudo apt-get install libgtk2.0* //gtk+2.0的开发程序(头文件和库文件)
二、找不到gtk/gtk.h(参考“知之者常乐~”的 Ubuntu下面安装GTK+)
sudo gedit ~/.bashrc
在文件未尾添加如下内容,保存并退出。
export PATH ="/usr/include/gtk-2.0"
经过测试,安装完 sudo apt-get install libgtk2.0* 后,重启系统后就可以认到“gtk/gtk.h”,不必手工添加环境变量。
三、测试
#include <gtk/gtk.h>
void hello(GtkWidget *widget,gpointer data)
{
g_print("Hello 大家好/n");
}
gint delete_event(GtkWidget *widget,GdkEvent *event,gpointer data)
{
g_print ("delete event occurred/n");
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 大家好");
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);
}
保存为hello.c
编译
gcc hello.c -o hello `pkg-config --cflags --libs gtk+-2.0`运行
./hello
以上,供参考。