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文檔查看器。
Sudoapt-get安裝libglib 2.0-doclibgtk 2.0-doc #這將安裝gtk/glib API參考手冊和其他幫助文檔。
這將安裝基於GTK的接口。GTK是壹個用於開發Gnome窗口的c/c++語言圖形庫。我把它扔在Ubuntu的機器上,把在線教程的代碼復制下來,在這臺機器上編譯。代碼文件名:t1.c根據教程,用以下命令編譯:
gcc t 1 . c ' pkg-config-cflags-libs GTK+-2.0 '
編譯結果:找不到gtk/gtk.h。
因為我的Ubuntu是Gnome系統,所以我以為電腦上應該已經安裝了gtk+2.0的開發程序(頭文件和庫文件)。其實如果在Ubuntu上開發gtk+2.0程序,需要安裝相應的頭文件和庫。在控制臺窗口輸入sudoapt-get install lib GTK 2.0 *,GTK+2.0需要的所有文件都被下載安裝。再次應用編譯命令:gcc t 1 . c ' pkg-config-cflags-libsgtk+-2.0,編譯運行。
Pkg-config是壹個用來管理軟件包的程序。在控制臺中輸入PKG-配置-CFLAGS-libsgtk+-2.0的運行結果:
-DPNG _ NO _ MMX _ CODE-I/usr/include/GTK-2.0-I/usr/lib/GTK-2.0/include-I/usr/include/atk-1.0-I/usr/include/pango-1.0-I/usr/include/glib-2.0-I/usr/lib/glib-2.0/include-I/usr/include/include
可以看出,輸出文本包含了gcc編譯gtk+2.0所需的所有選項(頭文件目錄和庫文件)。
這裏需要註意的壹點是,GCC T1兩邊的引號。c ` pkg-config-CFLAGS-LIBSGTK+-2.0 `,pkg-config-CFLAGS-LIBSGTK+-2.0不是真正的引號,而是鍵盤數字部分所在行最左邊的字符。如果誤用了單引號,gcc就不能使用pkg-config-cflags-libsgtk+-2.0生成的文本作為編譯選項。構造函數。
$ gcc GTK hello . c-o GTK test ` pkg-config-cflags-libs GTK+-2.0 '
$ ./gtktest
gcc GTK 1 . c ` pkg-config-cflags-libs GTK+-2.0 '
//////////////////////////////////////////////////////////////////////////////////////////////////////
首先,獲得超級用戶權限。
Apt-get install vim #使用vim編寫代碼,當然妳可以使用任何妳喜歡的編輯器。
Apt-get install build-essential #這將安裝基本的編程工具,如gcc/g++/gdb/make。
apt-get install gnome-core-devel #這將安裝開發相關的庫文件,如libgtk2.0-dev libglib2.0-dev。
Apt-get install pkg-config #用於編譯GTK程序時自動找出頭文件和庫文件的位置。
Apt-get install devhelp #這將安裝devhelp GTK文檔查看器。
Apt-get安裝libglib 2.0-doclibgtk 2.0-doc #這將安裝gtk/glib API參考手冊和其他幫助文檔。
apt-get installed glade libglade 2-dev #這將安裝基於GTK接口構造函數。
安裝後,測試程序hello.c
# include & ltGTK/GTK . h & gt;-我壹直說編譯的時候找不到頭文件,後來在/usr/include裏找到了gtk-2.0/gtk/gtk.h,原來是路徑錯誤,最後我把頭文件路徑改成了
void hello(GtkWidget *小部件,gpointer數據)
{
G_print("大家好\ n ");
}
gint delete _ event(GtkWidget *小部件,GdkEvent *事件,gpointer數據)
{
g_print("發生刪除事件\ n ");
返回(真);
}
void destroy(GtkWidget *小部件,gpointer數據)
{
GTK _ main _ quit();
}
int main( int argc,char *argv[])
{
GtkWidget * window
GtkWidget *按鈕;
GTK _ init(& amp;argc & amp;argv);
WINDOW = GTK _ WINDOW _ new(GTK _窗口_頂層);
gtk _ SIGNAL _ connect(GTK _對象(窗口),“刪除_事件”,GTK _信號_FUNC(刪除_事件),空);
gtk_signal_connect (GTK_OBJECT(窗口)," destroy ",GTK_SIGNAL_FUNC (destroy),NULL);
GTK _ CONTAINER _ set _ border _ width(GTK _ CONTAINER(窗口),10);
Button = GTK _按鈕_新_帶_標簽("大家好");
gtk _ SIGNAL _ connect(GTK _對象(按鈕),“點擊”,GTK _信號_FUNC(妳好),空);
GTK _ SIGNAL _ connect _ OBJECT(GTK_OBJECT(按鈕),"點擊",GTK _ SIGNAL _ FUNC(GTK _ widget _ destroy),GTK _ OBJECT(窗口));
GTK _ CONTAINER _ add(GTK _容器(窗口),按鈕);
gtk_widget_show(按鈕);
gtk_widget_show(窗口);/*顯示窗口*/
GTK _ main();/*進入主循環*/
return(0);
}
最後編譯並運行:
$ gcc hello . c-o hello ` pkg-config-cflags-libs GTK+-2.0 '
$ ./妳好
////////////////////////////////////////////////////////////////////
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文檔查看器。
Sudoapt-get安裝libglib 2.0-doclibgtk 2.0-doc #這將安裝gtk/glib API參考手冊和其他幫助文檔。
這將安裝基於GTK的接口。GTK是壹個用於開發Gnome窗口的c/c++語言圖形庫。我把它扔在Ubuntu的機器上,把在線教程的代碼復制下來,在這臺機器上編譯。代碼文件名:t1.c根據教程,用以下命令編譯:
gcc t 1 . c ' pkg-config-cflags-libs GTK+-2.0 '
編譯結果:找不到gtk/gtk.h。
因為我的Ubuntu是Gnome系統,所以我以為電腦上應該已經安裝了gtk+2.0的開發程序(頭文件和庫文件)。其實如果在Ubuntu上開發gtk+2.0程序,需要安裝相應的頭文件和庫。在控制臺窗口輸入sudoapt-get install lib GTK 2.0 *,GTK+2.0需要的所有文件都被下載安裝。再次應用編譯命令:gcc t 1 . c ' pkg-config-cflags-libsgtk+-2.0,編譯運行。
Pkg-config是壹個用來管理軟件包的程序。在控制臺中輸入PKG-配置-CFLAGS-libsgtk+-2.0的運行結果:
-DPNG _ NO _ MMX _ CODE-I/usr/include/GTK-2.0-I/usr/lib/GTK-2.0/include-I/usr/include/atk-1.0-I/usr/include/pango-1.0-I/usr/include/glib-2.0-I/usr/lib/glib-2.0/include-I/usr/include/include
可以看出,輸出文本包含了gcc編譯gtk+2.0所需的所有選項(頭文件目錄和庫文件)。
這裏需要註意的壹點是,GCC T1兩邊的引號。c ` pkg-config-CFLAGS-LIBSGTK+-2.0 `,pkg-config-CFLAGS-LIBSGTK+-2.0不是真正的引號,而是鍵盤數字部分所在行最左邊的字符。如果誤用了單引號,gcc就不能使用pkg-config-cflags-libsgtk+-2.0生成的文本作為編譯選項。構造函數。
$ gcc GTK hello . c-o GTK test ` pkg-config-cflags-libs GTK+-2.0 '
$ ./gtktest
gcc GTK 1 . c ` pkg-config-cflags-libs GTK+-2.0 '