You are on page 1of 3

第四天笔记

一、Linux 内核的编译

内核是 Linux 系统最重要的一个部分,内核负责管理进程、内存、设备、文件、网络,所以


内核决定了系统的稳定性和性能。

Linux 系统的特点是开源的(源码公开),而且内核源码遵循 GPL 协议,需要注意 Linux 系


统是可以裁剪的,也就是说用户可以根据实际的需要对内核中的功能进行修改和裁剪,但
是对内核操作完成后一定要对内核进行编译,生成目标平台的镜像文件,然后再把镜像文
件烧录到开发板中,然后才可以进行工作。

编译内核源码的另一个原因就是用户编写的驱动程序想要加载到内核中,前提是必须对内
核源码进行编译,因为驱动程序需要依赖内核源码中的头文件和配置文件,而只有编译内
核源码,才会生成这些文件。
(1) 首先准备好内核源码包,把内核源码包解压到 PC 端的 Linux 系统的目录中(家目录)

注意:Linux 内核源码只能在 Linux 系统下编译,不能在 Windows 系统下编译,所以不能在


共享文件夹下/mnt/hgfs/xxx 对内核源码进行编译。

注意:编译 Linux 内核源码的前提是需要安装对应的开发环境:首先 VMware 虚拟机的版本


必须是 12 以上(一般 win8 或者 win10 系统都用 15 版本以上),其次 PC 端的 Linux 系统的
版本应该是 16.04 以上(但是不能太高也不能太低)并且是 64 位的操作系统。

(2) 切换到家目录下解压好的 6818GEC 文件夹内,检查一下源码包中的目录结构是否正常

buildroot ---- 指的是 QT 根文件系统的制作工具


GEC6818uboot ---- 指的是 uboot 的源码
kernel ---- 指的是 Linux 内核源码
linux ---- 指的是三星公司提供的音视频解码库的源码
mk ---- 指的是脚本文件,可以利用该脚本编译 uboot 和 Linux 内核
out ---- 指的是编译 uboot 和 kernel 之后生成的文件和镜像
prebuilts ---- 指的是提供的编译 uboot 和 kernel 的编译工具
prototype ---- 指的是三星公司提供的 uboot 和 kernel 编译的依赖文件
tools ---- 指的是提供的一些工具

(3) 利用 mk 脚本文件对 uboot 的源码进行编译 输入命令: ./mk -u

(4) 利用 mk 脚本文件对 kernel 的源码进行编译 输入命令: ./mk -k

作业:完成内核源码的编译工作

You might also like