内核2.6.39/Documentation/kbuild/kbuild.txt

输出文件


modules.order
--------------------------------------------------
这个文件记录了模块在Makefile文件中出现的顺序。这个文件由modprobe使用以确定地解决匹配多个模块的别名问题。


modules.builtin
--------------------------------------------------
这个文件是编译进内核的所有模块的列表。这个被modprobe用来确保加载一些内建模块时候不失败。



环境变量


KCPPFLAGS

--------------------------------------------------

预处理时传送的附加选项.。预处理选项将在以下所有情况被使用,在kbuild确实预处理了包含编译C文件和汇编文件时。


KAFLAGS
--------------------------------------------------
汇编 ( 内置 和 模块 ) 的 附加选项 。



AFLAGS_MODULE
--------------------------------------------------
附加 模块的具体 方案 , 使用 $ (AS)的 。


AFLAGS_KERNEL
--------------------------------------------------
$(AS)的附加选项,当使用内建编译代码的汇编代码时。


KCFLAGS
--------------------------------------------------
C编译器的附加选项 (for内建和模块).


CFLAGS_KERNEL
--------------------------------------------------

 $(CC)的附加选项当编译代码为内建时.


CFLAGS_MODULE
--------------------------------------------------
$(CC)的附加模块特定选项.


LDFLAGS_MODULE
--------------------------------------------------
当链接模块的时候$(LD)的附加选项 

KBUILD_VERBOSE
--------------------------------------------------
设置kbuild verbosity.可被分配同样的值使用"V=...".
查看 make帮助查找整个列表,设置 "V=..." 比 KBUILD_VERBOSE优先级高


KBUILD_EXTMOD
--------------------------------------------------
设置查看内核源码的目录当编译外部模块时
目录可以以下面几种方式指定:
1) 在命令行中使用"M=..."
2) 环境变量KBUILD_EXTMOD
3) 环境变量SUBDIRS
这些可能性列表的顺序以他们的优先级为准,使用 "M=..."通常会覆盖其他选项。


KBUILD_OUTPUT
--------------------------------------------------
编译内核时候指定输出目录,输出目录同样可以通过使用命令行 "O=...".
设置 "O=..." 比KBUILD_OUTPUT优先级高


KBUILD_DEBARCH
--------------------------------------------------

对于deb-pkg目标, 允许 overriding the normal heuristics deployed by
deb-pkg. 通常deb-pkg试图猜测正确的基于UTS_MACHINE变量的,或者基于一些架构的或者内核配置的架构。
 KBUILD_DEBARCH变量假定为有效的 Debian架构


ARCH
--------------------------------------------------
设置要编译架构的ARCH

在多数情况下,架构的名字和在arch/ 目录下发现的目录名相同,但是一些架构比如 x86 and sparc有别名。

x86: 32位i386,64位 x86_64。
sparc: 32位sparc,64位 sparc64


CROSS_COMPILE
--------------------------------------------------
指定一个binutils文件名的可选固定部分,

CROSS_COMPILE可以是文件名的一部分或者全路径


CROSS_COMPILE 也在一些设置中使用for ccache 


CF
--------------------------------------------------
sparse的附加选项


CF通常在命令行这样使用


    make CF=-Wbitwise C=2


安装路径
--------------------------------------------------
INSTALL_PATH 指定了在哪里那种更新的内核和系统映射镜像。默认/boot,你也可以设置为其他值。


安装内核
--------------------------------------------------
当使用“make install"调用安装脚本
缺省的名字是 "installkernel".


以下参数将调用脚本:
    $1 - 内核版本
    $2 - 内核镜像文件
    $3 - 内核映射文件
    $4 - 缺省的安装路径 (空白的话使用root目录)

"make install" 的实现与具体架构相关,以上参数可能会有不同。


INSTALLKERNEL的作用是保证当采用交叉编译内核时,指定自定义安装。


MODLIB
--------------------------------------------------
指定在哪儿安装的模块

缺省值是:


     $(INSTALL_MOD_PATH)/lib/modules/$(KERNELRELEASE)


 该值可以被重写当缺省值被忽略的时候。


INSTALL_MOD_PATH
--------------------------------------------------
INSTALL_MOD_PATH给MODLIB指定一个前缀 for 模块目录重定位 required by build roots.  这个没有在makefile中定义但是参数可以在需要的时候传递给make。


INSTALL_MOD_STRIP
--------------------------------------------------
INSTALL_MOD_STRIP, 如果定义了, 将导致某块在安装后被移除。will cause modules to be
stripped after they are installed. 如果 INSTALL_MOD_STRIP 是 '1',则默认的选项 --strip-debug会被使用。 否则,
INSTALL_MOD_STRIP 的值会被当做strip command的选项.


INSTALL_FW_PATH
--------------------------------------------------
INSTALL_FW_PATH 指定固件安装位置
默认值:


    $(INSTALL_MOD_PATH)/lib/firmware


 该值可以被重写当缺省值被忽略的时候。


INSTALL_HDR_PATH
--------------------------------------------------
INSTALL_HDR_PATH 指定安装用户空间头文件的位置当执行 "make headers_*".
默认值:


    $(objtree)/usr


$(objtree)保存输出文件的目录

.
输出目录常常通过使用设置命令行 "O=..."


 该值可以被重写当缺省值被忽略的时候。


KBUILD_MODPOST_WARN
--------------------------------------------------
KBUILD_MODPOST_WARN设置用来避免错误以防在最后模块连接阶段未定义符号。它把这类错误转成警告。



KBUILD_MODPOST_NOFINAL
--------------------------------------------------
KBUILD_MODPOST_NOFINAL设置跳过最后的模块连接, to skip the final link of modules.
这完全有用在加速测试编译方面.


KBUILD_EXTRA_SYMBOLS
--------------------------------------------------
为使用其他模块符号的模块准备。查看更多细节在modules.txt.


ALLSOURCE_ARCHS
--------------------------------------------------

对于tags/TAGS/cscope目标,你可以指定数据库中包含的不止一个架构,由空格分开。例如.:


    $ make ALLSOURCE_ARCHS="x86 mips arm" tags


想获取所有可用架构,你可以指定所有,比如:


    $ make ALLSOURCE_ARCHS=all tags


KBUILD_ENABLE_EXTRA_GCC_CHECKS
--------------------------------------------------
  如果在命令行中使用 "W=1"打开,它将打开附加的
gcc -W... 选项 for 更多扩展的编译时检查。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值