なぜ「make clean」と「make mrproper」を一緒に使うのですか?

なぜ「make clean」と「make mrproper」を一緒に使うのですか?

これがLinuxカーネルにMakefile書かれた方法です。

clean - Remove most generated files but keep the config and
        enough build support to build external modules
mrproper - Remove all generated files + config + various backup files

そしてそこに説明があります。アーチ文書それ

準備を完了するには、カーネルツリーが完全にきれいであることを確認してください。

$ make clean && make mrproper

それでは、make mrproperより完全な除去が可能な場合はなぜそれを使用しますかmake clean

答え1

レビューで述べたように、クリーニングは3つのレベルで行われます。LinuxカーネルMakefile:

###
# Cleaning is done on three levels.
# make clean     Delete most generated files
#                Leave enough to build external modules
# make mrproper  Delete the current configuration, and all generated files
# make distclean Remove editor backup files, patch leftover files and the like

Makefileによると、mrproperターゲットはcleanターゲットによって異なります(参照:1421号線)。またdistclean目標はmrproper

したがって、実行するmake mrproperだけで十分です。cleanターゲットが実行するのと同じ操作も削除するためです(それ以上ではありません)。

このmrproperターゲットは1993年(Linux 0.97.7)に追加され、常にそれに依存してきましたclean。つまり、使用する必要はまったくありません。両方のような目標make clean && make mrproper

歴史的参考資料:https://archive.org/details/git-history-of-linux

答え2

cleanmrproper目標のための前提条件ですファイルの生成したがって、make clean単独で実行することは重複します。

答え3

特定のコマンド(make clean && make mrproper)でははい、意味はありません(たとえば、すべての四角形を削除してから、すべての四角形とすべての三角形を削除すると言うのと同じmake cleanmake mrproper...のカーネルビルドなので、あなたのものを破棄するからです.config)。 ...誰かが純粋に違いを思い出させるためにこの方法で指示を書いたかもしれません(例えば、2番目の部分があなたの内容を破棄することを思い出させるために慣れていてビルドできるならば、.config今すぐバックアップしてください) 。make cleanいつものように)。

関連情報