发布时间:2014-08-11 13:38:44
Linux内核构建系统之四回到我们的主框架上面来,讨论完配置目标的处理后,就轮到框架中 "ifeq ($(config-targets),1)-endif" 块的 else 部分了。这部分是为了处理那些构建目标以及和.config无关的目标,其对这些目标处理的代码都位于框架中的E部分中。在E部分之前,有一个不小的 "ifeq ($(dot-config),1)-endif" .........【阅读全文】
发布时间:2014-08-11 13:38:40
对另外构建目标的处理,我们使用两个例子来讲述,那就是配置内核后用来编译内核的命令:"make ARCH=arm CROSS_COMPILE=arm-linux- "和编译外部模块的命令:"make ARCH=arm CROSS_COMPILE=arm-linux- -C KERNELDIR M=dir"。之所以选取这两个 make命令 来作为例子讲述,是因为它所涉及到的关于构建系统的知识比较多,覆盖比较.........【阅读全文】
发布时间:2014-08-11 13:38:32
Linux内核构建系统之六yihect | 10 元月, 2011 16:38回到处理 vmlinux 的那条规则上面来,在处理好 $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main)等目标后,构建系统接下来要处理的就是 vmlinux.o 和 $(kallsyms.o) 了。内核构建系统之所以要在链接 vmlinux 之前,去链接出vmlinux.o。其原.........【阅读全文】
发布时间:2014-08-11 13:38:27
Linux内核构建系统之七通过前面的分析,我们已经知道,在 Linux 中,区分有两种模块:内部模块和外部模块。我们这里说的对目标 modules 的处理指的就是要编译出那些内部模块,对外部模块的处理我们将在后面叙述。我们还知道,不管是内部模块,还是外部模块,其编译都要分两个阶段进行。阶段一生成组成模块的对应 .o .........【阅读全文】
发布时间:2014-08-11 13:38:23
Linux内核构建系统之八在编译 vmlinux 以及 modules 的过程中,构建系统已经产生了很多输出:vmlinux elf 映像、System.map符号表文件、各种内部模块等等。这些东西是编译支持任何架构的Linux内核过程中都要产生的,但是如果要想真正去使用Linux内核,光用前面产生的 vmlinux 是不行的。因为前面产生的 vmlinux 是一.........【阅读全文】