WordPress标签加HTML,合肥seo公司,律师行业网站模板,重庆在线平台4. 一个使用linux kbuild实现可配置编译的例子
我编写了一个使用Linux kbuild机制实现可配置编译的小例子#xff0c;工程名为print-example。包括如下如下几个目录#xff1a;
其中scripts、Makefile、Makefile.flags是从busybox-1.9.0复制过来的。
4.1 运行print
运行m…4. 一个使用linux kbuild实现可配置编译的例子
我编写了一个使用Linux kbuild机制实现可配置编译的小例子工程名为print-example。包括如下如下几个目录
其中scripts、Makefile、Makefile.flags是从busybox-1.9.0复制过来的。
4.1 运行print
运行make menuconfig命令弹出配置菜单如下
进入Print Configure选项选择配置项
这里选择代印信息1和2保存退出配置界面。
运行make命令编译程序生成print可执行文件运行print结果如下
运行make clean编译产生文件。
4.2 实现print
4.2.1 主目录Makefile
主目录Makefile修改部分代码如下
使用core-y时是使用的静态链接目标文件obj-y使用libs-y时是使用库目标文件lib-y各个子目录的Makefile应该相应的使用obj-y或lib-y。 4.2.2主目录Kconfig
主目录Kconfig代码如下
它给出了主菜单的配置选项并有source关键字加入子目录的Kconfig文件。 4.2.3 main文件夹
main文件夹下共两个文件
其中main.c代码如下
头文件autoconf.h是在编译过程中生成的。
Makefile代码如下 4.2.4 printfun文件夹
printfun文件夹下有六个文件
其中printx.cprint1.c, print2.c, print3.c, print4.c代码如下
Makefile代码如下
Kconfig代码如下 4.2.5 include目录
include目录下只有一个文件print.h代码如下 参考文献
【1】孙纪坤 配置编译内核
【2】linux kernel /Documentation/kbuild/kconfig-language.txt
【3】2.6Kconfig语法
【4】linux kernel /Documentation/kbuild/makefile.txt
【5】linux2.6内核Makefile详解