🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
前面提到,在编译驱动程序freg之前,我们需要执行make menuconfig命令来配置它的编译方式。 ~~~ USER@MACHINE:~/Android/kernel/goldfish$ make menuconfig ~~~ 在弹出来的第一个配置界面中用上下箭头键选择“Device Drivers”项,按Enter键;接着在弹出来的第二个配置界面中继续用上下箭头键选择“Fake Register Driver”项,按Y键或者M键,就可以看到选项前面方括号中的字符变成“*”或者“M”符号,它们分别表示将驱动程序freg编译到内核中或者以模块的方式来编译。 ~~~ │ │ [*] Fake Register Driver │ │ ...... ~~~ > 注意:如果我们要以模块的方式来编译驱动程序freg,那么就必须先在第一个配置界面中选择“Enable loadable module support”选项,并且按Y键将它的值设置为true,即使得内核可以支持动态加载模块,这样才能在第二个配置界面中按M键来配置“Fake Register Driver”选项。同样,如果要使得内核支持动态卸载模块,那么就要在第一个配置界面中选择“Enable loadable module support”选项中的子选项“Module unloading”,并且按Y键将它的值设置为true。 配置完成后,保存编译配置选项,退出make menuconfig命令,然后就可以执行make命令来编译驱动程序freg了。 ~~~ USER@MACHINE:~/Android/kernel/goldfish$ make ~~~ 当看到下面的输出时,就说明驱动程序freg编译成功了。 ~~~ OBJCOPY arch/arm/boot/zImage Kernel: arch/arm/boot/zImage is ready ~~~ 编译得到的内核镜像文件zImage保存在arch/arm/boot目录下,我们可以使用它来启动Android模拟器。