2012-03-16 12 views
1

gcc -MD file.cは、file.dという名前の依存出力ファイルを作成します。しかし、コンパイル中にエラーが発生した場合、依存ファイルが生成されないため、このファイル(依存ファイル)を作成する必要はありません。だから誰でもこの依存ファイルを使用したり、gccのこのファイル/機能のいくつかの有用性を利用したりして、軽いものを投げることができます。cプログラムをコンパイル中にDEPENDENCIES_OUTPUTファイルを作成する目的

答えて

2

file.dファイルはmakeで理解できます。多くの場合、最初に.dファイルを生成してMakefileにインクルードし、インクルードされたヘッダの1つが変更された場合にのみcファイルをコンパイルします。

makeを使用しない場合は気にしないでください。

GCC documentationは言う:

代わりのメインソースファイルの依存関係を記述するメイクに適した前処理、出力ルールの結果を出力します。プリプロセッサは、そのソースファイル、コロン、およびインクルードされたすべてのファイルの名前(-includeまたは-imacrosコマンドラインオプションからのものを含む)のオブジェクトファイル名を含む1つのmakeルールを出力します。

+0

しかし、私は、ファイルの依存関係のチェックのためのメイクファイルでの.dファイルが含まれて誰も見たことがありません。これはmakefileの作成の複雑さを増やしません(最初に.dファイルを生成してインクルードしますか?)。使い方はよく見えますが、おそらく自動的にこれを行ってファイルの変更を検出します。 – peeyush

関連する問題