树莓派Linux内核编译

1、获取编译所需源码
1)下载地址:

官方网址:https://github.com/raspberrypi

上面列出了树莓派所有的开源软件:

  1. firmware:树莓派的交叉编译好的二进制内核、模块、库、bootloader
  2. linux:内核源码可以在branches下进行版本的选择。
  3. tools:编译内核和其他源码所需的工具——交叉编译器等

以上三个文件最为重要,下面的工程介绍如下

(1)documentation:树莓派离线帮助文档,教你如何使用、部署树莓派(树莓派官方使用教程)

(2)userland:arm端用户空间的一些应用库的源码——vc视频硬浮点、EGL、mmal、openVG等

(3)hats:Hardware Attached on Top,树莓派 B+型板子的扩展板资料

(4)maynard:一个gtk写成的桌面环境

(5)scratch:一个简易、可视化编程环境

(6)noobs:一个树莓派镜像管理工具,他可以让你在一个树莓派上部署多个镜像

(7)target_fs:树莓派最小文件系统,使用busybox制作

(8)quake3:雷神之锤3有线开发源码firmwareb

2)下载方法:

a、网页直接下载:

点到所需要下载的工程,左上角选版本,右方有一个download ZIP按钮可直接下载下载后请在linux系统下进行解压缩后使用

b、使用git下载

进入到家目录,执行以下命令完成在线下载。

sudo git clone git://github.com/raspberrypi/firmware.git

sudo git clone git://github.com/raspberrypi/linux.git

sudo git clone git://github.com/raspberrypi/tools.git

会得到三个文件夹:firmware linux tools

在进行下载的过程中,需要注意以下几点:

(1)确保虚拟机可以连接外网。

(2)如果git工具没有进行安装,请先使用apt-get工具进行下载,执行以下命令:sudo apt-get install git bc进行安装

2、编译、提取内核及其模块

1)获得内核配置文件

在运行的树莓派中运行:

$ ls /proc/

可看到一个叫config.gz的文件,这是当前树莓派配置选项记录文件,将其拷出,放入内核源码目录树下

在linux内核源码下执行:

$zcat config.gz > .config,会生成.config文件。

 

2)配置、编译内核

a、修改内核源码的Makefile

在内核源码目录下,打开Makefile文件:

$ vi Makefile

找到以下类似代码

改为如下图所示

注意

(1)交叉编译器的路径根据安装的路径进行相关的配置。

(2)每一行的后面不要有空格存在。

b、查看、修改配置选项

$ make menuconfig

可出现以下界面

c、编译内核镜像

执行make命令编译结束后如下所示整个编译的时间根据配置的不同有所不同本次编译时间约1小时,请耐心等待。

在arch/arm/boot目录下可以看到一个叫zImage的文件,就是编译生成的新内核

但是树莓派需要另外一种格式的镜像,需要进行处理,执行以下命令

$ cd tools/mkimage

 

$ ./imagetool-uncompressed.py ../../linux/arch/arm/boot/zImage

即可在当前文件夹下看到一个叫:kernel.img的文件,就是新生成的内核

 

 

猜你喜欢

转载自blog.csdn.net/zxy131072/article/details/83545436