linux系统移植:内核获取和编译(代码片段)

嵌入式up笔记 嵌入式up笔记     2022-12-02     594

关键词:

文章目录

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内核移植入门(代码片段)

...性,支持的硬件平台广泛2.超强的网络功能3.多任务多用户系统4.模块化的设计五大子系统:1.进程管理子系统2.内存管理子系统3.文件系统子系统4.网络协议子系统5.设备管理子系统获取linux内核:1.内核官方发布点2.芯片厂商提供内核... 查看详情

linux内核移植初探(代码片段)

...、支持的硬件平台广泛;超强的网络功能;多任务多用户系统;模块化的设计五大子系统:进程管理;内存管理;文件系统;网络协议;设备管理内核获取路径:芯片厂商、内核源码官方linux内核的目录结构层次结构:平台相关... 查看详情

内核的配置和编译原理(代码片段)

《2.uboot和系统移植-第15部分-2.15.内核的配置和编译原理》 欢迎访问《朱老师物联网大讲堂》官方网站 www.zhulaoshi.org 以获取本课程更多信息第一部分、章节目录2.15.1.linux内核源码目录结构12.15.2.linux内核源码目录结构22.15.3.内... 查看详情

linux系统移植:bootz启动linux内核(代码片段)

文章目录Linux系统移植:bootz启动Linux内核一、images的全局变量二、do_bootz函数三、bootz_start函数四、do_bootm_states函数五、bootm_os_get_boot_func函数六、do_bootm_linux函数Linux系统移植:bootz启动Linux内核一、images的全局变量启动Linu... 查看详情

linux系统移植:根文件系统构建(代码片段)

文章目录Linux系统移植:根文件系统构建一、什么是根文件系统二、根文件系统目录2.1子目录bin2.2子目录dev2.3子目录etc2.4子目录lib2.5子目录mnt2.6子目录proc2.7子目录usr2.8子目录var2.9子目录sbin2.10子目录sys2.11子目录opt三、BusyBox创... 查看详情

linux系统移植:kernel顶层makefile(上)(代码片段)

文章目录Linux系统移植:Kernel顶层Makefile(上)一、版本号二、MAKEFLAGS变量三、命令输出四、静默输出五、编译结果输出目录六、代码检查七、模块编译八、设置目标架构和交叉编译器九、调用构建文件十、交叉编译... 查看详情

jz2440上内核和文件系统移植

...440,现在自己尝试移植linux4.7.2到板子上,并使用ubifs文件系统代替旧的jffs2文件系统。 下载交叉编译工具链工具链我使用的是friendlyARM提供的工具链,因为韦东山教程提供的工具链比较旧不能编译较新的linux内核,也可以自己... 查看详情

linux系统移植:nxp官板uboot移植(代码片段)

文章目录Linux系统移植:NXP官板uboot移植一、获取官板U-Boot二、编译下载U-Boot源码三、官方驱动验证Linux系统移植:NXP官板uboot移植移植NXP的IMX6ULL官板U-Boot到原子的开发板一、获取官板U-Boot去NXP官网下载评估板的U-Boot,... 查看详情

linux系统移植:kernel顶层makefile(下)(代码片段)

文章目录Linux系统移植:Kernel顶层Makefile(下)一、makedefconfig过程二、Makefile.build脚本分析三、make过程四、built-in.o文件编译生成过程五、makezImage过程Linux系统移植:Kernel顶层Makefile(下)继续分析Linux内核... 查看详情

32163165(代码片段)

《2.uboot和系统移植-第17部分-2.17.内核的移植1-从三星官方内核开始移植》 欢迎访问《朱老师物联网大讲堂》官方网站 www.zhulaoshi.org 以获取本课程更多信息第一部分、章节目录2.17.1.内核移植初体验2.17.2.初步移植以看到启动... 查看详情

imx6ull学习笔记——获取和编译linux内核(代码片段)

一、简介1.1Linux内核Kernel即是Linux内核,Linux内核采用宏内核架构,即Linux大部分功能都会在内核中实现,如进程管理、内存管理、设备管理、文件管理以及网络管理等功能,Linux在发展的过程中,引入了内核模... 查看详情

imx6ull学习笔记——获取和编译linux内核(代码片段)

一、简介1.1Linux内核Kernel即是Linux内核,Linux内核采用宏内核架构,即Linux大部分功能都会在内核中实现,如进程管理、内存管理、设备管理、文件管理以及网络管理等功能,Linux在发展的过程中,引入了内核模... 查看详情

imx6ull学习笔记——获取和编译linux内核(代码片段)

一、简介1.1Linux内核Kernel即是Linux内核,Linux内核采用宏内核架构,即Linux大部分功能都会在内核中实现,如进程管理、内存管理、设备管理、文件管理以及网络管理等功能,Linux在发展的过程中,引入了内核模... 查看详情

2内核的配置和移植(代码片段)

...有三种:第一种是kernel.org上的官方版本,第二种是三星移植过的,第三种是九鼎X210的移植版本。我们讲课时使用第三种内核来讲解,后面的移植实验使用第二种内核来移植。源码在开发板光盘中有。可以自己去linux下解压然后ma... 查看详情

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

更新时间更新内容2022-10-26初稿文章目录一、linux原生内核初试1.下载2.编译3.生成boot.img镜像3.启动测试二、移植到friendlyRK3399-SOM开发板1.新建单板2.新建设备树:3.编译4.测试三、rootfs挂载问题1.问题描述2.问题分析3.问题解决源码一... 查看详情

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

更新时间更新内容2022-10-26初稿文章目录一、linux原生内核初试1.下载2.编译3.生成boot.img镜像3.启动测试二、移植到friendlyRK3399-SOM开发板1.新建单板2.新建设备树:3.编译4.测试三、rootfs挂载问题1.问题描述2.问题分析3.问题解决源码一... 查看详情

linux内核获取初次编译源码目录分析(代码片段)

目录Linux内核获取Linux内核初次编译Linux内核源码目录分析1、arch目录2、block目录3、crypto目录4、Documentation目录5、drivers目录6、firmware目录7、fs目录8、include目录9、init目录10、ipc目录11、kernel目录12、lib目录13、mm目录Linux内核获取关... 查看详情

linux系统移植:正点原子u-boot移植(代码片段)

文章目录Linux系统移植:正点原子U-Boot移植一、What‘sU-Boot?1.1U-Boot简介1.2U-Boot选择二、正点原子U-Boot编译2.1编译环境2.2编译脚本三、U-Boot烧写与启动Linux系统移植:正点原子U-Boot移植一、What‘sU-Boot?1.1U-Boot简介Linux系统启... 查看详情