在CentOS上使用GCC編譯圖形界面程序,通常需要選擇一個圖形庫來開發界面。常見的圖形庫有GTK+、Qt、FLTK等。下面以GTK+為例,介紹如何在CentOS上使用GCC編譯圖形界面程序。
首先,確保已經安裝了GTK+開發庫。如果沒有安裝,可以使用以下命令安裝:
sudo yum install gtk2-devel
創建一個名為hello.c
的文件,并輸入以下代碼:
#include <gtk/gtk.h>
static void hello_destroy(GtkWidget *widget, gpointer data) {
gtk_main_quit();
}
int main(int argc, char *argv[]) {
GtkWidget *window;
GtkWidget *label;
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window), "Hello World");
gtk_container_set_border_width(GTK_CONTAINER(window), 10);
g_signal_connect(window, "destroy", G_CALLBACK(hello_destroy), NULL);
label = gtk_label_new("Hello, World!");
gtk_container_add(GTK_CONTAINER(window), label);
gtk_widget_show_all(window);
gtk_main();
return 0;
}
使用GCC編譯程序,需要鏈接GTK+庫。在終端中輸入以下命令:
gcc `pkg-config --cflags gtk+-2.0` -o hello hello.c `pkg-config --libs gtk+-2.0`
這里,pkg-config
命令用于獲取GTK+庫的編譯和鏈接參數。--cflags
選項用于獲取編譯參數,--libs
選項用于獲取鏈接參數。
編譯成功后,運行生成的可執行文件:
./hello
這將顯示一個簡單的GTK+窗口,上面有一個"Hello, World!"標簽。
注意:上述示例使用的是GTK+ 2.x版本。如果你想使用GTK+ 3.x版本,需要安裝gtk3-devel
庫,并將代碼中的#include <gtk/gtk.h>
替換為#include <gtk/gtk.h>
,同時將pkg-config --cflags gtk+-2.0
和pkg-config --libs gtk+-2.0
分別替換為pkg-config --cflags gtk+-3.0
和pkg-config --libs gtk+-3.0
。