2017-10-14 152 views
0

我想學習使用GTK3,但我無法編譯第一個示例。無法使用GTK編譯代碼

我安裝MSYS2就跑:

pacman -S mingw-w64-x86_64-gtk3 

依次爲:

pacman -S mingw-w64-x86_64-glade 

和:

pacman -S mingw-w64-x86_64-devhelp 

我在c:\MSYS64這是默認的位置安裝,但是當我嘗試並運行

gcc `pkg-config --cflags gtk+-3.0` -o example-0 example-0.c `pkg-config --libs gtk+-3.0` 

編譯Simple Window教程

#include <gtk/gtk.h> 

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

    window = gtk_application_window_new (app); 
    gtk_window_set_title (GTK_WINDOW (window), "Window"); 
    gtk_window_set_default_size (GTK_WINDOW (window), 200, 200); 
    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; 
} 

我得到一個錯誤:

C:\Users\Simon\Desktop\webbrowser>gcc `pkg-config --cflags gtk+-3.0` -o example-1 example-1.c `pkg-config --libs gtk+-3.0`          
gcc: error: `pkg-config: No such file or directory        
gcc: error: gtk+-3.0`: No such file or directory         
gcc: error: example-1.c: No such file or directory        
gcc: error: `pkg-config: No such file or directory        
gcc: error: gtk+-3.0`: No such file or directory         
gcc: error: unrecognized command line option '--cflags'       
gcc: error: unrecognized command line option '--libs'       
gcc: fatal error: no input files             
compilation terminated.   

這是從命令提示符,所以我想嘗試使用MSYS2外殼,但我得到了一個錯誤說-bash: gcc: command not found 。我也嘗試將腳本移動到C:\msys64\home\,但返回相同的錯誤。

某處我跳過某些東西或者做錯了什麼,但我真的不明白是什麼。我一直在嘗試過去的一個月(開啓和關閉),並會非常感謝任何幫助。

我在Windows上使用MinGW,如果有幫助。

回答

1
gcc: error: `pkg-config: No such file or directory 

你錯過了pkg-config。請閱讀所有GTK+ on Windows說明。我寫了那個頁面,但無法猜測你將要使用的很多語言。如果您選擇C或C++,則需要第5步,因爲您需要基本構建工具,如pkg-config。我故意給出了一個命令,選擇了許多工具來避免一個接一個地選擇它們,並且有人錯過了一個工具。

所以請運行:關於如何提高網頁上的指示

pacman -S mingw-w64-x86_64-toolchain base-devel 

反饋歡迎。

+0

謝謝我這樣做,現在可以在Msys shell中找到'pgk-config',但是我又收到另一個錯誤:'在pkg-config搜索路徑中找不到package gtk + -3.0。 也許你應該將包含gtk + -3.0.pc' 的目錄添加到PKG_CONFIG_PATH環境變量中 沒有找到包'gtk + -3.0' 在pkg-config搜索路徑中找不到包gtk + -3.0。 也許你應該將包含gtk + -3.0.pc' 的目錄添加到PKG_CONFIG_PATH環境變量中 找不到包'gtk + -3.0' bash:gcc:找不到命令 '我現在該做什麼? – Simon

+0

哦,我想用C的方式。 – Simon

+0

pkg-config --list-all | grep gtk'返回? – liberforce