4

CでGTKを使用する方法を学ぼうとしています。

私はEclipseCDTを使用して開発しています。サンプルWebサイトから次のコードをコピーしました。

#include <gtk/gtk.h>
#include <stdlib.h>

void displayUI()
{
GtkWidget* mainWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);

gtk_window_set_default_size(GTK_WINDOW(mainWindow), 400, 300);
gtk_window_set_title(GTK_WINDOW(mainWindow), "GTK Simple Example");
gtk_window_set_position(GTK_WINDOW(mainWindow), GTK_WIN_POS_CENTER_ALWAYS);

gtk_signal_connect(GTK_OBJECT(mainWindow), "destroy", G_CALLBACK(gtk_main_quit), NULL);

gtk_widget_show_all(mainWindow);
}

int main(int argc, char *argv[]) {

gboolean b = gtk_init_check(&argc, &argv);

if(b == 0) {
    puts("Failed to init");
    exit(0);
}

gtk_init(&argc, &argv);

displayUI();

gtk_main();

return EXIT_SUCCESS;
}

このプログラム(またはGTKに関連する他のプログラム)を実行しようとすると、Windowsはすぐに「InsertProgramNameHere.exeがクラッシュしました」というメッセージを表示します。

MinGW、MinSYS、PKG-CONFIG、MAKEがすべて正しくインストールされています。プログラムは正常にコンパイルされます...実行されません。

何か案は?

アップデート

このエラーログを見つけました。依存関係の問題があるようです。

Faulting application TestRun.exe, version 0.0.0.0, time stamp 0x4f839a6a, faulting

module libgtk-win32-2.0-0.dll, version 6.0.6002.18541, time stamp 0x4ec3e39f, exception 

code 0xc0000135, fault offset 0x0006f52f, process id 0x1674, application start time 

0x01cd16c174d3df90.
4

3 に答える 3

1

GTK のインストール ディレクトリが PATH にあることを確認してください。

于 2012-04-10T10:45:11.720 に答える
0

環境変数に (MinGW、MinSYS、および gtk-dev) の bin フォルダーへのパスを追加する必要があります。

于 2012-04-17T06:21:40.650 に答える