Linux系统移植:内核获取和编译

Posted 嵌入式up笔记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统移植:内核获取和编译相关的知识,希望对你有一定的参考价值。

文章目录

Linux系统移植:内核获取和编译

一、获取 Linux 内核

Linux 由 Linux 基金会管理与发布,Linux 官网为 https://www.kernel.org,选取合适的版本来使用就行

本章的移植使用 NXP 提供的 Linux 源码

二、Linux 内核编译

编译内核之前需要先在 ubuntu 上安装 lzop 库

sudo apt-get install lzop

然后编译内核代码,编译指令如下:

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- imx_v7_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- all -j16

指令比较多,可以编成 shell 脚本

#!/bin/sh
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- imx_v7_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- all -j16

然后赋予执行权限:

chmod 777 linux_build.sh

执行脚本,弹出 Linux 图形配置界面:

Linux 的图行界面配置和 uboot 思路基本一致,只是内容区别而已,不清楚可以参考上一篇文章,这里我们直接退出,使用默认操作,退出后内核继续编译,编译完成如下:

成功编译后会在 arch/arm/boot 这个目录下生成一个叫做 zImage 的文件,即镜像文件,

同时也会在 arch/arm/boot/dts 下生成很多.dtb 文件,这些.dtb 就是设备树文件

到此编译完成

以上是关于Linux系统移植:内核获取和编译的主要内容,如果未能解决你的问题,请参考以下文章

Linux系统移植:原厂 Kernel 移植到开发板

Linux系统移植:原厂 Kernel 移植到开发板

RK3399系统移植 | 移植 linux 主线5.4.32内核

RK3399系统移植 | 移植 linux 原生5.4.32内核

Linux内核移植初探

内核编译与移植