前提・実現したいこと
gcc インクルードパスの追加と理解
発生している問題・エラーメッセージ
このように記述しgccコマンドでビルドすると下記エラーとなります。
#include <gtk/gtk.h> int main(int argc, char** argv) { return 0; }
pi@raspberrypi:~ $ gcc main_gtk.c -o gtktest
main_gtk.c:1:10: fatal error: gtk/gtk.h: そのようなファイルやディレクトリはありません
インクルードを次の様に記述すると下記エラーとなります。
#include <gtk-3.0/gtk/gtk.h> int main(int argc, char** argv) { return 0; }
In file included from main_gtk.c:1:
/usr/include/gtk-3.0/gtk/gtk.h:30:10: fatal error: gdk/gdk.h: そのようなファイルやディレクトリはありません
gccの#includeはインクルードの仕方とエラーから察するとusr/include直下の.hファイルしか参照していないように思いますがそのような認識で合っていますでしょうか?
また、#includeを<gtk-3.0/gtk/gtk/h>へ変更した場合、gdk/gdk.hがありませんとエラーになります。これはgtk.hの中で<gdk/gdk.h>がインクルードされているからのようですがどういう方法で記述すれば回避できるのでしょうか?
gtk.hとgdk.hの場所は次のようになっています。
usr/include/gtk-3.0/gtk/gtk.h
usr/include/gtk-3.0/gdk/gdk.h
環境変数を定義しても状況変わりませんでした。
home/pi/.bash_profile に下記追加し再起動
C_INCLUDE_PATH=/usr/include/gtk-3.0:$C_INCLUDE_PATH export C_INCLUDE_PATH
C_INCLUDE_PATHの内容を参照したく、printenvコマンドを実行しても何も表示がされなかった点も疑問です。
pi@raspberrypi:~ $ printenv C_INCLUDE_PATH
pi@raspberrypi:~ $
該当のソースコード
ソースコード
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/22 09:18