質問: makefileのコンポーネントの処理順序 makefileでは、依存関係の行は次の形式です。 ``` abc: x y z ``` 3つのコンポーネント(x、y、z)はすべてそれ自身がmakefileのさらに下の依存関係行のターゲットです。 *make abc* が呼び出された場合、3つのターゲットx、y、zはどの順番で実行されますか?
回答: あなたは本当にそれらが実行される順序に依存すべきではありません。他のすべてが等しい場合、それらの前提条件の3つのレシピはすべて並行して実行できます。 ターゲットレシピが実行される前に、すべての前提条件が満たされていなければなりません。 `x` 、 `y` と `z` の間に依存関係がなく、パラレル実行がない場合、GNU makeはそれらを指定した順序で実行するように見えますこれはドキュメントで保証されていません。