gccに任意のインクルードパスを環境変数に追加する方法

はじめに

C言語でプログラムを書いてると、標準のヘッダファイルに追加で任意のヘッダファイルを使いたいときがあります。 大体はgcc -Iなどでヘッダファイルのあるディレクトリを指定すると思います。

正直毎回これをやるのは面倒なので、環境変数に任意のヘッダファイルのディレクトリを追加してみます。

環境

PC:MacBookPro2015
OS:macOS Sierra

やり方

.bash_profileに以下を追加

export C_INCLUDE_PATH="/usr/local/Cellar/glfw/3.2.1/include/GLFW" #任意のディレクトリ(1)
export C_INCLUDE_PATH="/usr/local/Cellar/glfw/3.2.1/include/GLFW(2):$C_INCLUDE_PATH" #任意のディレクトリ(2)

※ 今回はbrewでインストールしたGLFWの例です。
※ 二番目は例なので実際には存在しないディレクトリです。

解説

まず、export C_INCLUDE_PATH="/usr/local/Cellar/glfw/3.2.1/include/GLFW"環境変数C_INCLUDE_PATHを初期化して新たに新規のパスを追加しています。 そして二つ目以降はexport C_INCLUDE_PATH="/usr/local/Cellar/glfw/3.2.1/:$C_INCLUDE_PATH"という感じで追加をしていきます。

違いとしてはディレクトリパスの最後に:$C_INCLUDE_PATHを追加してることです。 これは環境変数C_INCLUDE_PATHを継承しながら新たにパスを追加するということになります。

この辺りの流れはまだ十分に理解していなので、間違っていたら申し訳ないです…

私の環境ではこれでオプションを設定しなくても問題なくコンパイルが通るようになったので、おそらく使えると思います。