溫馨提示×

CentOS中gcc編譯圖形界面程序

小樊
54
2025-09-09 15:58:39
欄目: 智能運維

在CentOS中,使用GCC編譯圖形界面程序通常需要使用GTK+、Qt或其他圖形庫。這里以GTK+為例,介紹如何使用GCC編譯一個簡單的圖形界面程序。

  1. 首先,確保已經安裝了GTK+開發庫??梢允褂靡韵旅畎惭b:
sudo yum install gtk2-devel
  1. 創建一個名為hello_gui.c的源代碼文件,并輸入以下內容:
#include <gtk/gtk.h>

static void activate(GtkApplication *app, gpointer user_data) {
    GtkWidget *window;
    GtkWidget *button;
    GtkWidget *box;

    window = gtk_application_window_new(app);
    gtk_window_set_title(GTK_WINDOW(window), "Hello GTK+");
    gtk_window_set_default_size(GTK_WINDOW(window), 200, 100);

    box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 5);
    gtk_container_add(GTK_CONTAINER(window), box);

    button = gtk_button_new_with_label("Click me!");
    gtk_box_pack_start(GTK_BOX(box), button, TRUE, TRUE, 0);

    g_signal_connect(button, "clicked", G_CALLBACK(gtk_main_quit), NULL);

    gtk_widget_show_all(window);
}

int main(int argc, char **argv) {
    GtkApplication *app;
    int status;

    app = gtk_application_new("org.gtk.example", G_APPLICATION_FLAGS_NONE);
    g_signal_connect(app, "activate", G_CALLBACK(activate), NULL);
    status = g_application_run(G_APPLICATION(app), argc, argv);
    g_object_unref(app);

    return status;
}

這個程序創建了一個簡單的窗口,其中包含一個按鈕。當單擊按鈕時,程序將退出。

  1. 使用以下命令編譯源代碼:
gcc `pkg-config --cflags gtk+-2.0` -o hello_gui hello_gui.c `pkg-config --libs gtk+-2.0`

這里,pkg-config命令用于獲取GTK+庫的編譯和鏈接標志。--cflags選項用于獲取編譯標志,--libs選項用于獲取鏈接標志。

  1. 編譯完成后,運行生成的可執行文件:
./hello_gui

這將顯示一個包含“Click me!”按鈕的窗口。單擊按鈕后,程序將退出。

注意:如果你想使用其他圖形庫(如Qt),你需要安裝相應的開發庫,并根據庫的文檔修改源代碼和編譯命令。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女