Por que tanto 'make clean' quanto 'make mrproper' são usados?

5

Está escrito no kernel do linux Makefile que

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

E está indicado nos documentos do Arch que

To finalise the preparation, ensure that the kernel tree is absolutely clean;

$ make clean && make mrproper

Então, se make mrproper fizer uma remoção mais completa, por que o make clean é usado?

    
por sitilge 22.08.2017 / 13:46

3 respostas

7

De acordo com o Makefile do kernel Linux , o destino mrproper depende da meta clean (veja linha 1324 ).

A execução de make mrproper será, portanto, suficiente, já que também removeria as mesmas coisas que a meta clean faria.

A meta mrproper foi adicionada em 1993 (Linux 0.97.7) e sempre dependeu da meta clean . Isso significa que nunca foi necessário usar os ambos destinos como em make clean && make mrproper .

Referência: link

    
por 22.08.2017 / 13:55
0

clean é um pré-requisito para mrproper target em Makefile , portanto, executar make clean separadamente é redundante.

    
por 22.08.2017 / 13:54
0

É melhor executar make mrproper , mas não é necessário, por quê?

Porque se houver um arquivo de configuração antigo, o comando make mostrará um aviso " não está limpo, por favor, execute 'make mrproper' ", este erro é reproduzido quando você não consegue compile o kernel e recompile-o novamente.

De: Dominar o Raspberry Pi

make mrproper

In theory, this step shouldn’t be necessary. But the kernel developers want you to do it anyway, in case something was accidentally left out of place. Keep in mind that this step also removes the .config file. So if you need to keep it, make a copy of it.

    
por 22.08.2017 / 14:33

Tags