解压内核源码包后, 到内核源代码目录树的顶层目录, 执行
# make help
Cleaning targets:
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
distclean – mrproper + remove editor backup and patch files
看帮助可以发现删除的文件范围从小到大依次为: make clean < make mrproper < make distclean, 查看源码目录树的顶层目录下的Makefile求证, 可以发现:
clean: archclean $(clean-dirs)
$(call cmd,rmdirs)
$(call cmd,rmfiles)
@find . $(RCS_FIND_IGNORE) \
\( -name ‘*.[oas]’ -o -name ‘*.ko’ -o -name ‘.*.cmd’ \
-o -name ‘.*.d’ -o -name ‘.*.tmp’ -o -name ‘*.mod.c’ \
-o -name ‘*.symtypes’ -o -name ‘modules.order’ \
-o -name ‘Module.markers’ \) \
-type f -print | xargs rm -f
mrproper: clean archmrproper $(mrproper-dirs)
$(call cmd,rmdirs)
$(call cmd,rmfiles)
distclean: mrproper
@find $(srctree) $(RCS_FIND_IGNORE) \
\( -name ‘*.orig’ -o -name ‘*.rej’ -o -name ‘*~’ \
-o -name ‘*.bak’ -o -name ‘#*#’ -o -name ‘.*.orig’ \
-o -name ‘.*.rej’ -o -size 0 \
-o -name ‘*%’ -o -name ‘.*.cmd’ -o -name ‘core’ \) \
-type f -print | xargs rm -f
也就是说, 执行make mrproper, 会先执行make clean, 执行make distclean之前, 会先执行make mrproper。
再回到make help的结果:
make clean 删除大多数的编译生成文件, 但是会保留内核的配置文件.config, 还有足够的编译支持来建立扩展模块
make mrproper 删除所有的编译生成文件, 还有内核配置文件, 再加上各种备份文件
make distclean mrproper 删除的文件, 加上编辑备份文件和一些补丁文件。
make clean、make mrproer 以及make distclean的区别
相关推荐
- *TMS 黑色星期五大促销!Ryzen 9 7950X 和 7950X3D 清仓促销!库存充足!立即订购!
- 【五年商家双十一限时送200】香港9929+CN2 大带宽2核14元/月
- DEDICATED.COM::Xeon E3-1270v5/v6 | 64GB | 2 x 512GB SSD | IPMI | 100TB @ 1GBPS | 49.99 美元/月
- *IOFLOOD.com █ RAM-ageddon:双倍增长 █ 2X RAM 同样低价
- *PLiKhost:廉价且可靠的印度尼西亚 (IIX) 专用服务器 – 雅加达
- WordPress站点加速之开启Gzip压缩的七种方法
- 如何在Apache中开启gzip压缩服务?让网页速度更快
- “php-cgi.exe – FastCGI进程意外退出” 的解决办法