内核编译初体验

来源:互联网 发布:linux命令more less 编辑:程序博客网 时间:2024/06/08 03:57

以下内容源于朱有鹏《物联网大讲坛》课程的学习,如有侵权,请告知删除。


一、获取内核源码

  • 第一种是kernel.org上的官方版本,第二种是三星移植过的,第三种是九鼎X210的移植版本。
  • 我们讲课时使用第三种内核,移植实验使用第二种内核。
  • 九鼎配置好的kernel在qt_x210v3s_160307.tar中,属于2.6.35.7版本的内核。

二、内核配置和编译体验

1、先make distclean,然后确认主Makefile的设置

(1)主要是检查交叉编译工具链有没有设置对。CROSS_COMPILE   ?= /usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi-

(2)确认ARCH = arm。主要目的是为了编译时能找到arch/arm目录。

2、make x210ii_qt_defconfig

  • 最后出现configuration written to .config,就证明我们的操作是正确的。
  • 如果没有得到.config文件,不能进入下一步。实测发现没有.config也可以make menuconfig,但是这样做出来的内核编译和烧写运行应该是有问题的。
3、make menuconfig

(1)可能出现的错误1:ncurses库没装

错误信息:

*** Unable to find the ncurses libraries or the

*** required header files.

*** 'make menuconfig' requires the ncurses libraries.

*** 

*** Install ncurses (ncurses-devel) and try again.

解决方案:apt-get install libncurses5-dev

(2)可能出现的错误2:屏幕太小

错误信息:

Your display is too small to run Menuconfig!

It must be at least 19 lines by 80 columns.

解决方案:全屏,或者是把字体调小。


总结:

(1)这里会弹出配置界面。

(2)make menuconfig是第二步配置。

(3)因为此内核是九鼎已经移植过的,因此这里的配置可以不做,直接退出即可。

4、make

  • 编译完成后得到的内核镜像不在源码树的根目录下,而是在arch/arm/boot这个目录下
  • 得到的镜像名是zImage。



0 0
原创粉丝点击