3

こんにちは、私は私がインクルードしたプログラムを持っています

  • gtk/gtk.h
  • glib.h

私はコマンドを使用しました

sudo apt-get install libgtk2.0-dev glib 
sudo apt-get install glade

しかし、それでもglibが見つからないというエラーが発生し、gtk/gtk.hが見つかりません。私はこの gtk を初めて使用しています。それがどのように機能するのかわかりません インストール方法 親切に助けてください ありがとう

私はCプログラミングをしています

4

3 に答える 3

11

(linux/gtk のより最近のリリースで) 使用することになっているコマンドは、gtk-config ではなく pkg-config です。gtk-config は、2.0 以前の gtk 開発を対象としています。

コンパイルしているファイルが foo.c と呼ばれていると考えてください。それを gtk-2.0 でコンパイルするには、コマンド ラインから次のコマンドを使用します。

gcc `pkg-config --cflags glib-2.0 gtk+-2.0` foo.c -o foo `pkg-config --libs glib-2.0 gtk+-2.0`

これでコンパイルされ、実行可能なファイル foo が生成されます。

しかし、実際には、このようなものは入力し続けるのが面倒なので、makefile を使用してください。サンプルの makefile を書き出しますが、エディター ウィンドウでの入力を困難にする、それらのフォーマットで従わなければならない規則があります。

# Sample Makefile
CFLAGS := $(shell pkg-config --cflags glib-2.0 gtk+-2.0)
LDFLAGS := $(shell pkg-config --libs glib-2.0 gtk+-2.0)

foo: foo.c
<TAB HERE NOT SPACES>$(CC) $(CFLAGS) $< -o $@ $(LDFLAGS)

これは、foo を作成するという単純なルールを定義します。これは foo.c に依存するため、foo.c が foo よりも新しい場合、再構築されます。'TAB HERE NOT SPACES' と書く場所は、タブ文字でなければならず、空白文字のセットであってはなりません。

于 2011-03-11T20:02:39.227 に答える
2

「locate glib.h」と入力して、ファイルの場所を特定します (最新の Linux ディストリビューションを想定して - あなたの投稿は多くの情報を提供しません)。

次に、makefile で glib.h へのパスが正しく指定されていることを確認します。(Makefile はありますよね?) gtk.h についても同じ手順を実行します。

于 2011-03-11T19:30:24.913 に答える
1

公式ドキュメントを読んでください。GTK アプリケーションのコンパイル方法について説明しています。基本的に、hello.cファイルをコンパイルしてプログラムを生成するには、次のhelloように入力します。

gcc `pkg-config --cflags --libs gtk+-2.0` hello.c -o hello
于 2011-03-14T09:27:26.390 に答える