2010-12-13 9 views
2

私は私のためにヘッダを生成するシンプルなライブラリを持っており、これをMakefile内で連鎖したいと思っています。どのヘッダが欠けているのかをgccを使って判断できるメークファイルですか?

存在しないヘッダーファイルがcppファイルに含まれている場合、該当するファイルが存在する場合は、一致するソースファイルから生成する必要があります。私はこれを行う方法を理解することはできません。

gcc -MMを使用して各.cppファイルの依存関係を事前に調べてみましたが、ヘッダーがないと失敗します。私はそれらを再生成しようとするためにどのファイルが欠落しているか知る必要があります。

すべての.cppファイルのヘッダーの前提条件を定義するだけであれば、もちろんすべての.cppファイルが再コンパイルされます。

どのように私は行方不明のヘッダーを再生成するためのアイデアですか?

答えて

5

溶液はGCCを使用して見つけることができるようだ。そのような-Mは依存 生成を要求するようオプションとともに

http://gcc.gnu.org/onlinedocs/cpp/Invocation.html

-MG

、-MGが前提不足しているヘッダー ファイルは生成されたファイルであり、なしで依存リストに を追加しますエラーが発生します。

0

パターンルールを定義して各ヘッダーを生成しようとしましたか?

%.hh: %.cpp 
    header_generator $^ > [email protected] 
+0

これは問題ではありません。私は.cppファイルに含まれているヘッダーが、これらのヘッダーだけのルールを作成するためにビルドされていないかどうかを調べようとしています。 – Dan

関連する問題