1.先在顶层目录文件的Makefile中查找vmlinux,可以查到作为目标时的vmlinux:

按顺序查看vmlinux的依赖内容,首先是scripts/link-vmlinux.sh,可以在这个汇编文件看到vmlinux的编译要素:

第二个是变量vmlinux-deps,其内容如下:

第三个参数是call if_changed;link-vmlinux其调用命令cmd_link-vmlinux,负责对vmlinux进行链接

现在需要知道vmlinux后面第二个参数的KBUILD_VMLINUX_OBJS与KBUILD_VMLINUX_LIBS的内容

通过打印只能看到KBUILD_VMLINUX_OBJS的内容
KBUILD_VMLINUX_LIBS时链接所用的库。主要需要了解KBUILD_VMLINUX_OBJS中的静态库
