2016-09-01 4 views
1

私はmsys2とmingw-gcc、gtk3パッケージをインストールしました。msys2でGTK3アプリケーションを構築するには?

pacman -S mingw-w64-i686-toolchain 
pacman -S mingw-w64-i686-gtk3 

次に、テストコードを作成しようとしました。

// main.c 
#include <stdio.h> 
#include <gtk\gtk.h> 

int main() 
{ 
    printf("hello, msys2!"); 
    return 0; 
} 

このテストコードはエラーでビルドされませんでした。

main.c:2:21: fatal error: gtk\gtk.h: No such file or directory 

私はgtk.hの場所を確認し、修正して再構築しました。

// #include <gtk\gtk.h> -> #include <gtk-3.0\gtk\gtk.h> 
C:/msys32/mingw32/include/gtk-3.0/gtk/gtk.h:30:21: fatal error: gdk/gdk.h: No such file or directory 

私は間違いがあると思います。

+0

です。 –

答えて

2

go gtk3 tutorial site

とgccオプションを読んでください。

(MSYS2でコンパイル)開始時に
gcc `pkg-config --cflags gtk+-3.0` -o example-0 example-0.c `pkg-config --libs gtk+-3.0` 
+0

ダウンロード「のpkg-config設定」、私は私devuleveこの命令にターミナルを使用する場合ので、今私は?あなたが持ってファイルを置く必要があります: "no sush directory" –

-1

私は、次のコマンド(またはそのようなもの)を使用して、提案されたように同じ問題と手順を持っている:

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

エラーメッセージが残っているが...

export PKG_CONFIG_PATH=/mingw32/lib/pkgconfig 

または

:だから私は(私の場合)次のコマンドを入力する必要があり、いくつかのインターネットの研究Iの発見後
export PKG_CONFIG_PATH=/mingw64/lib/pkgconfig 

これまでに引用したコンパイルコマンドを使用すると、よりうまく動作し始め、プログラムをコンパイルして実行することができました。

MSYS2を再起動するたびにこの手順を実行する必要があるということは、悲しいこと(多くのうちの1つ)です。

そしてもう1つの悲しいことは、新しいバージョンのMSYS2(そして私のコンピュータのCodeblocks)を再インストールした後でも、まだプログラムをコンパイルできていることです。ただし、zlib1.dllのエラーのために実行されていません。

メッセージは、私は:-(同じ問題を抱えている

"The procedure entry point inflateReset2 could not be located in 
the dynamic link library zlib1.dll" 
+0

このコマンドを実行して、パッケージが格納されている場所を確認しました: – Marcio

+0

find/-name * .pc – Marcio

関連する問題