编译IMX6ULL开发板的Uboot和Linux内核(二)_mucheni的博客-程序员ITS301

技术标签: IMX6ULL  

迅为I.MX6ULL终结者开发板对应的Uboot源码在光盘资料的“i.MX6UL终结者光盘资料\05_uboot linux源码\终结者Uboot和Linux源码.zip”压缩包里面,解压该压缩包,得到“uboot-imx-rel_imx_4.1.15_2.1.0_ga_xxxxxxxx.tar.gz”文件(其中的xxxxxxxx代表的是发布日期),这个文件就是终结者开发板对应的Uboot源码。我们通过SSH将该文件上传到Ubuntu系统,上传完成后如下图所示:

然后我们输入“tar -xvf uboot-imx-rel_imx_4.1.15_2.1.0_ga_20200314.tar.gz”命令,开始解压Uboot源码,如下图所示:

解压完成后,得到“uboot-imx-rel_imx_4.1.15_2.1.0_ga”文件夹,使用“cd uboot-imx-rel_imx_4.1.15_2.1.0_ga”命令进入到Uboot源码目录下,如下图所示:

然后我们开始编译Uboot,因为迅为电子的i.MX6ULL核心板有两种:EMMC版本NAND FLASH版本,这两个版本的编译命令不一样,可以参考下面表格:

我这里以EMMC版本的核心板为例,开始编译Uboot源码,直接在终端输入“./create.sh”命令,如下图所示:

编译过程如下图所示:

编译完成会生成“u-boot.imx”文件,如下图所示:

上图生成的“u-boot.imx”文件就是Uboot的景象文件,我们可以把它拷贝到Windows系统下然后使用MFGTools烧写工具烧写到开发板运行。

 

29.3 编译终结者开发板Linux内核

I.MX6ULL终结者开发板对应的Linux内核源码在光盘资料的“i.MX6UL终结者光盘资料\05_uboot linux源码\终结者Uboot和Linux源码.zip”压缩包里面,解压该压缩包,得到“linux-imx-rel_imx_4.1.15_2.1.0_ga_xxxxxxxx.tar.gz”文件(其中的xxxxxxxx代表的是发布日期),这个文件就是终结者开发板对应的Linux内核源码。我们通过SSH将该文件上传到Ubuntu系统,上传完成后如下图所示:

然后在终端输入“tar -xvf linux-imx-rel_imx_4.1.15_2.1.0_ga_20200314.tar.gz”命令,开始解压Linux内核源码,如下图所示:

解压完成后生成“linux-imx-rel_imx_4.1.15_2.1.0_ga”Linux内核源码文件夹,使用“cd linux-imx-rel_imx_4.1.15_2.1.0_ga”命令进入到“linux-imx-rel_imx_4.1.15_2.1.0_ga”文件夹,如下图所示:

然后直接在终端输入“./create.sh”命令,开始编译Linux内核源码,如下图所示:

编译过程如下图所示:

编译完成,会在“arch/arm/boot”目录下生成“zImage”文件,如下图所示:

会在“arch/arm/boot/dts”目录下生成设备树文件,如下图所示:

从上图可以看到生成了十几个设备树文件,因为迅为电子的i.MX6ULL核心板有两种类型:EMMC版本NAND FLASH版本,我们根据核心板的类型,将对应的镜像文件整理成下表所示:

我们可以根据上表的提示,将对应的镜像拷贝到Windows系统下,然后使用MFGTools烧写工具烧写到开发板运行。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/mucheni/article/details/107354921

智能推荐

一个有趣的概率问题(阿里2012校园招聘——运维笔试)_费米子的博客-程序员ITS301

一架客机上有N个座位,N个人排队依次登机。第一个乘客把机票搞丢了,但他仍被允许登机。由于他不知道他的座位在哪儿,他就随机选了一个座位坐下。以后每一个乘客登机时,如果他的座位是空着的,那么就在他的座位坐下;否则,他就随机选一个仍然空着的座位坐下。请问,最后一个人登机时发现唯一剩下的空位正好就是他的,其概率是多少?

Gunicorn-配置详解_一起学python吧的博客-程序员ITS301

在之前的文章中有记录WSGI容器的作用,以及我们知道常见的容器就只有的uWSGI和Gunicorn,在之前的文章中有记录他们的特性及优缺点,在这就不在多做描述。接下来将着重记录一下Gunicorn的一些配置:config-c CONFIG, --config CONFIGGunicorn配置文件路径,路径形式的字符串格式,如:gunicorn -c gunicorn.conf man...

core image 滤镜对照表_czxghostyueqiu的博客-程序员ITS301

CoreImage[6143:615100] FilterName:(    CIAccordionFoldTransition,    CIAdditionCompositing,    CIAffineClamp,    CIAffineTile,    CIAffineTransform,    CIAreaHistogram,    CIAztecCodeG

GPS相关知识科普_New_Mobi的博客-程序员ITS301_gps相关知识

GPS模块就是GPS信号接收器,定位卫星不断向地球发射着包含时间、卫星点位等重要参数的信息,在收到卫星信号后,GPS模块会解调出卫星信息信息,通过计算得到定位的经纬度信息等,将计算的得到的结果按照nmea协议的格式通过串口输出;在模块的输出数据里面,包含了XXGGA语句(XX可以是GN,BD,GP,GL,不同的定位方式抬头有差异),GGA语句主要包含时间、经纬度位置、解算状态、卫星颗数等相关信息;在模块的输出数据里面,包含了XXGSA语句,GSA语句主要包含了定位模式,定位方式,定位卫星编号等信息。...

Linux命令之程序(二)_杨psps的博客-程序员ITS301

Linux命令——time        time命令常用于测量一个命令的运行时间,注意不是用来显示和修改系统时间的(这是date命令干的事情)。它能做的不仅仅是测量运行时间,还可以测量内存、I/O等的使用情况,说法是time a simple command or give resource usage,其中time一词我认为它应该是测量或测定的意思,并不单指时间。一个程序在运行时使用的系统

DirextX 11游戏开发(1)_SevenShanwen的博客-程序员ITS301_directx11开发游戏引擎

目录链接库DirectX 数学库链接库在运行DX11的官方实例时,经常会出现无法解析的外部符号__imp__CoCreat…之类的错误,这是因为DX的一些函数调用了Windows SDK中的系统函数,因此需要链接相关的库。目前每个DX实例可以正确运行需要链接的库如下:X3daudio.libd3dx10d.libd3dx9d.libdxerr.libdxguid.libwinmm.libcomctl32.libkernel32.libUser32.libwsock32.libAd

随便推点

简单计算器-代码_沉下城的博客-程序员ITS301

.386.model flat,stdcalloption casemap:none;库文件includelib shell32.libincludelib user32.libincludelib masm32.libincludelib comctl32.libincludelib kernel32.libincludelib msvcrt.libinclude windows.incinclude masm32.incinclude shell32.inc

面向实时嵌入式系统的图形用户界面支持系统――MiniGUI背景,发展及优势_HiRuyue的博客-程序员ITS301

简介: 本文介绍面向实时嵌入式系统的图形用户界面�D�DMiniGUI,其产生、发展及优势,并与其他面向嵌入式系统的 GUI 进行了比较,然后结合实例介绍了 MiniGUI 的一些重要功能和特色,最后,本文介绍了正在进行的 MiniGUI 的开发情况。嵌入式 Linux 系统的 GUI 发展概况1.1 GUI 在嵌入式或实时系统中的地位在常见的 PDA 等小型手持式设备上,由于硬件条件

jbpm的下载安装与使用教程_黄俊东的博客-程序员ITS301_jbpm 下载

一、下载 登陆以下网站:“http://www.jboss.org/jbpm/”----------》“Download”-------》接着,单击download按钮即可下载jbpm的安装包二、安装1.解压缩jbpm-4.4.zip文件,笔者解压缩到了D:\ProgramerFiles\jbpm-4.4目录下。2.打开MyEclipse,展开以下菜单:

org.springframework.data.mapping.MappingException: Map key xxx.yyyyy contains dots but no replacemen_Haiyoung的博客-程序员ITS301_org.springframework.data

org.springframework.data.mapping.MappingException: Map key xxx.yyyyy contains dots but no replacement was configured!当map中key包含 "." 时,默认会抛出异常,需要显示的配置替换策略,可以在数据源配置里设置mapKeyDotReplacement的值org.sprin...

什么是强化学习,强化学习在控制系统中的应用以及matlab强化学习工具箱的介绍_领海王WHL的博客-程序员ITS301_强化学习控制器

一、Reinforcement Learning Toolbox介绍强化学习工具箱使用强化学习算法(包括DQN,A2C和DDPG)为训练策略(policy)提供函数和模块。您可以使用这些策略为复杂的系统(例如,机器人和自治系统)搭建控制器和开发决策算法。您可以使用深度神经网络,多项式或查找表来实施策略。该工具箱使您能够通过与MATLAB或Simulink模型所代表的环境进行交互来训练策略。您可以评估算法,使用超参数设置进行实验以及监视训练进度。为了提高训练效果,您可以在云,计算机集群和GPU(使用Par

MySQL中将数据库表名修改成大写的存储过程_古月小桥的博客-程序员ITS301

MySQL中将数据库表名修改成大写的存储过程activiti在本地windows环境中自动建表是小写的,但在linux环境中自动建表是大写的。如果使用sql脚本直接导入表信息,会报错,要将表名由小写转大写。DROP PROCEDURE IF EXISTS uppercaseTablenames;DELIMITER $CREATE PROCEDURE uppercaseTablenames(...

推荐文章

热门文章

相关标签