在构建Linux内核之前仅清理选定的模块

时间:2015-01-06 07:26:02

标签: linux linux-kernel kernel linux-device-driver kernel-module

我有一种情况,我需要针对不同的配置构建相同的内核。现在我试图构建内核而不进行make clean,但这给了我一些问题。一个配置有可能内置一些驱动程序,其他驱动程序可能与模块具有相同的驱动器。 在我的情况下,我想避免干净,以节省时间!编译一个新内核需要花费时间,因为我之前编译了同一个内核,只更改了少量驱动程序/模块,我想知道清除整个内核的任何备用选项。

谢谢!

2 个答案:

答案 0 :(得分:3)

如果您只是在处理几个模块,则无需重建完整的内核。但是,如果您的模块需要更改.config,请每次执行以下步骤以获取为特定.config

构建的模块
modify/copy the .config as per the requirement into the src dir
make prepare
make scripts
make modules_prepare
make M=drivers/<some driver>
make M=drivers/<some driver> clean

答案 1 :(得分:2)

假设您只想编译无线模块。 现在它的文件位于Linux_kernel/net/wireless文件夹

仅编译无线模块。

cd Linux_kernel
make ARCH=arm modules M=$(pwd)/net/wireless/

它将生成两个模块

  

Linux_kernel /净/无线/ cfg80211.ko

     

Linux_kernel /净/无线/ lib80211.ko

现在清理这些模块

make ARCH=arm modules M=$(pwd)/net/wireless/ clean