danglingfarpointer's memoization

仕事周りでの気付き、メモ、愚痴などを書いていきます。

あるヘッダファイルを-Wallの対象から除く

gccで-Wall付きでコンパイルした際、他者ライブラリのヘッダファイルからのwarningがあまりに多かったので、これらのヘッダファイルを-Wallの対象から除外したくなった。

ググッた結果、以下のページにヒット: http://stackoverflow.com/questions/1867065/how-to-suppress-gcc-warnings-from-library-headers

インクルードパスを、-Iではなく-isystemで指定すればよい。これにより、指定されたパスがシステムのインクルードパスと解釈され、warningが出なくなる。

例えば以下のコマンドだと、include以下のヘッダファイルは-Wallの適用対象外になる:

g++ -Wall -O2 -c -o test.o test.cpp -I. -isystem include