正点原子[第二期]ARM(I.MX6U)裸机篇学习笔记-1.2

前言:

本文是来自哔哩哔哩网站上视频“正点原子[第二期]Linux之ARM(MX6U)裸机篇”的学习笔记,在这里会记录下正点原子Linux ARM MX6ULL 开发板根据配套的哔哩哔哩学习视频所作的实验和笔记内容。本文大量的引用了正点原子哔哔哩网站的教学视频和链接中的内容。

引用:

正点原子IMX6U仓库 (GuangzhouXingyi) - Gitee.com

使用crosstool-ng制作交叉编译工具链-CSDN博客

Ubuntu系统下arm-linux-gcc交叉编译环境搭建过程_交叉编译环境的搭建-CSDN博客

嵌入式系统——交叉编译概念与环境搭建_交叉编译环境-CSDN博客


正文:

“正点原子[第二期]Linux之ARM(MX6U)裸机篇”第1.2 讲学习笔记,安装 ARM 交叉编译工具链。一般是在 x86 Ubuntu Linux 主机上编译给 ARM 开发板使用的镜像。在 x86 主机上编译出给 arm 开发板使用的可执行镜像,所以称为交叉编译。

ARM 交叉编译工具链,也成为了 toolchain ,ARM开发一般使用的是 Linaro 提供的已经已经预编译好的 x86 -arm 交叉编译工具链。访问 www.linaro.org 网站,可以下载需要的 x86-arm 交叉编译工具。

根据正点原子 Gitee 网站上提供的 I.MXU6LL 开发板的指导文档《【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.5.2.pdf》

正点原子IMX6U仓库 (GuangzhouXingyi) - Gitee.com

在《【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.5.2.pdf》文档里4.3.1 小结给出了下载 Linaro 交叉编译工具链的下载链接地址。

Linaro Releasesicon-default.png?t=N7T8https://releases.linaro.org/components/toolchain/binaries/latest-7/arm-linux-gnueabihf/到该页面下载需要的Linaro ARM 交叉编译工具链,

有很多种 GCC 交叉编译工具链,因为我们所使用的 I.MX6U-ALPHA 开发板是一个 Cortex-A7 内核的开发板,因此选择 arm-linux-gnueabihf,点击后面的“Binaries”进入可执行文件下载界面。

在正点原子的《.MX6U嵌入式Linux驱动开发指南V1.5.2.pdf》文档里提到,当是正点原子测试时发现当时(2019年)最新的GCC编译器版本 gcc-7.3.1 工具链编译的uboot无法启动。

在写本教程的时候最新的编译器版本是 7.3.1,但是笔者在测试 7.3.1 版本编译器的时候发现编译完成后的 uboot 无法运行。所以这里不推荐使用最新版的编译器。笔者测试过 4.9 版本的编 译 器 可 以 正 常 工 作 , 所 以 我 们 需 要 下 载 4.9 版 本 的 编 译 器 , 下 载 地 址 为

因为我实在初学阶段,为了简单起见,直接参考 《.MX6U嵌入式Linux驱动开发指南V1.5.2.pdf》文档里的建议下载如下 gcc-4.9 版本的交叉编译工具链。

Linaro Releasesicon-default.png?t=N7T8https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/arm-linux-gnueabihf/

根据你Ubuntu虚拟机的系统来选择需要再下载的版本,32位Ubuntu虚拟机选择名字中有i686的,64位Ubuntu虚拟机选择名字中有x86_64的。我安装的的是Virtualbox x86 32位 Ubuntu-14.04 虚拟机,所以我下载的是 'gcc-linaro-2017.01-i686-arm-linux-gnueabifh.tar.xz’,根据实际情况选择你需要的版本。鼠标右键复制链接地址,进入Ubuntu虚拟机,使用'wget'命令下载需要的gcc-4.9交叉编译工具链

##把xxx替换成需要下载文件URL链接地址
wget xxx

查看下下载下来的交叉编译工具链

dimon@dimon-VirtualBox:~/I.MX6U/tool$ ls -l
total 77984
-rw-rw-r-- 1 dimon dimon 79854508  2月 27  2018 gcc-linaro-4.9.4-2017.01-i686_arm-linux-gnueabihf.tar.xz

解压下载的交叉编译工具链'tar -xf '

tar -xf gcc-linaro-4.9.4-2017.01-i686_arm-linux-gnueabihf.tar.xz

将加压好的交叉编译链工具路径添加到Ubuntu Linux虚拟机的环境变量 ‘PATH’ 中,编辑用户目录下的 'sudo vi ~/.profile' 文件,在文件的尾部加上一行(根据你实际把编译工具链路径替换成你自己的路径)。

##编辑用户目录下的 .profile 文件
sudo vi ~/.profile

在文件的最后填上如下一句,把交叉编译工具链的路径添加了'PATH'环境变量中。

PATH=$PATH:/home/dimon/I.MX6U/tool/gcc-linaro-4.9.4-2017.01-i686_arm-linux-gnueabihf/bin/

添加成功,退出保存文件修改。重新登录Ubuntu虚拟机,测试下对环境变量'PATH'的修改是否已经生效,执行命令'cat $PATH'确认下交叉编译工具链的路径已经添加到环境变零PATH中。

cat $PATH

测试执行下‘arm-linux-gnueabihf-gcc -v’ 命令可以执行成功,说明交叉编译环境已经配置好了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/315245.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[论文笔记] EcomGPT:COT扩充数据的电商大模型

社区供稿 | EcomGPT:基于任务链数据的电商大模型(附魔搭推理实践) - 知乎 https://arxiv.org/pdf/2312.15696.pdf EcomInstruct指令数据集构建 数据集组成 COT方式构造垂域训练数据:把原本的垂域任务分解成了原子任务,构造了基于解决原子任务的数据。这样能用类似…

网页模版如何用

现在的网页模版已经得到了许多人的喜爱和使用。随着人们对互联网的需求不断增加,更多的公司和组织需要拥有自己的网站,以推广他们的品牌和服务。而网页模版为他们提供了一个简单而高效的方法来创建自己的网站。 网页模版是预先设计好的网站模板&#xff…

人工智能技术在教育中的潜力有多大

原文:人工智能技术在教育中的潜力有多大? - 知乎 作者:大全Prompt 链接:https://www.zhihu.com/question/637034129/answer/3346272227 来源:知乎 谢邀:在技术快速发展的今天,人工智能&#x…

炒股自动化:券商官方,散户可用,查询订单状态API如何用?

券商官方的接口,个人账户可申请,入金门槛低,接入文档完善,技术支持好的,经过我们筛选后,只有一家符合 会编程,有基础,只是需要API接口的朋友不用看这些,不会写程序的朋友…

【vue2】实现微信截图(复制图片)在项目内可粘贴

需求 后台管理在上传图片地方需要将复制的图片粘贴上传 一、添加事件 在原有上传组件的基础上添加 paste事件 二、方法 onPaste(e) {const items (e.clipboardData || window.clipboardData).items;let blob null;for (let i 0; i < items.length; i) {if (items[i].ty…

设计模式:单例、原型和生成器

在这篇文章中&#xff0c;我们将重点介绍其余的创建模式&#xff1a;Singleton&#xff0c;Builder和Prototype。 在我看来&#xff0c;这些模式不如工厂重要。然而&#xff0c;了解它们仍然很有用。我将提供UML描述&#xff0c;简单的java示例&#xff08;这样即使你不了解jav…

[linux网络编程]UDP协议和TCP协议的使用

目录 看以下内容前&#xff0c;你要先了解main函数带参数有什么用、 了解socket的相关函数接口 如果不了解socket的相关函数接口请先看我这篇文章 main函数带参数有什么用 UDP udp_server 1.生成socket文件描述符 2.填充sockaddr_in信息 3.bind 4.发&#xff08;收&…

渗透之sql注入练气篇

sql注入产生的原因&#xff1a; 由于程序过滤不严谨&#xff0c;导致用户有一些异常输入&#xff0c;最终触发数据库的查询。所以会出现sql注入这个问题。有些恶意的人就会利用这些信息导致数据库泄露。 注意&#xff1a;一般我们存在注入点我们会查询管理员的账号和密码&#…

如何30天快速掌握键盘盲打

失业后在家备考公务员&#xff0c;发现了自己不正确的打字方式&#xff0c;决定每天抽出一点时间练习打字。在抖音上看到一些高手的飞速盲打键盘后&#xff0c;觉得使用正确的指法打字是很必要的。 练习打字&#xff0c;掌握正确的键盘指法十分关键。 练习打字的第一步是找到…

ElasticSearch批处理

在刚才的新增当中&#xff0c;我们是一次新增一条数据。那么如果你将来的数据库里有数千上万的数据&#xff0c;你一次新增一个&#xff0c;那得多麻烦。所以我们还要学习一下批量导入功能。 也就是说批量的把数据库的数据写入索引库。那这里的需求是&#xff0c;首先利用mybat…

C++中布隆过滤器

&#x1f436;博主主页&#xff1a;ᰔᩚ. 一怀明月ꦿ ❤️‍&#x1f525;专栏系列&#xff1a;线性代数&#xff0c;C初学者入门训练&#xff0c;题解C&#xff0c;C的使用文章&#xff0c;「初学」C&#xff0c;linux &#x1f525;座右铭&#xff1a;“不要等到什么都没有了…

【单链表专题】

单链表专题 1.引入2.链表2.1链表的关系2.2链表的结构 3.代码实现链表 1.引入 对于顺序表而言 中间/头部的插⼊删除&#xff0c;时间复杂度为O(N)增容需要申请新空间&#xff0c;拷⻉数据&#xff0c;释放旧空间。会有不小的消耗。增容⼀般是呈2倍的增⻓&#xff0c;势必会有⼀…

Github进行fork后如何与原仓库同步[解决git clone 太慢的问题]

前言 fork了一个仓库以后怎么同步源仓库的代码&#xff1f; 先说一下git clone太慢的问题&#xff0c;可以通过代理拉取代码&#xff0c;具体请看&#xff1a; https://gitclone.com/ 步骤 1、执行命令 git remote -v 查看你的远程仓库的路径。 以一个实际例子说明&#x…

[Spring Cloud] (4)搭建Vue2与网关、微服务通信并配置跨域

文章目录 前言gatway网关跨域配置取消微服务跨域配置 创建vue2项目准备一个原始vue2项目安装vue-router创建路由vue.config.js配置修改App.vue修改 添加接口访问安装axios创建request.js创建index.js创建InfoApi.js main.jssecurityUtils.js 前端登录界面登录消息提示框 最终效…

微信小程序使用echarts组件实现饼状统计图功能

微信小程序使用echarts组件实现饼状统计图功能 使用echarts实现在微信小程序中统计图的功能&#xff0c;具体的实现步骤思路可进我主页查看我的另一篇博文https://blog.csdn.net/weixin_45465881/article/details/138171153进行查看&#xff0c;本篇文章主要使用echarts组件实…

SpringBoot的自动装配原理

SpringBoot自动装配原理 SpringBoot的启动类上有一个注解&#xff1a;SpringBootApplication 。该注解是三个注解的复合注解。 1.SpringBootConfiguration 注解 点进SpringBootConfiguration 注解&#xff0c;可以发现其核心注解为Configuration注解&#xff1a; Configuration…

python文件 成绩分析

‘’文件score.txt中存储了学生的考试信息,内容如下 小明,98 小刚,90 小红,91 小王,98 小刘,80 请写代码,读取文件数据,并进行如下分析 最高分和最低分分别是多少&#xff1f;得最高分的学生有几个&#xff1f; 得最低分的学生有几个平均分是多少&#xff1f; ‘’’ def rea…

Web3技术解析:区块链在去中心化应用中的角色

引言 在过去几年中&#xff0c;Web3技术已经成为了互联网领域的一个热门话题。作为区块链技术的延伸&#xff0c;Web3不仅仅是数字货币的代名词&#xff0c;更是一个能够为各种应用提供去中心化解决方案的强大工具。本文将深入探讨区块链在Web3去中心化应用中的关键角色&#…

Python_AI库 Matplotlib的应用简例:绘制与保存折线图

本文默认读者已具备以下技能&#xff1a; 熟悉Python基础语法&#xff0c;以自行阅读python代码块熟悉Vscode或其它编辑工具的应用 在数据可视化领域&#xff0c;Matplotlib无疑是一个强大的工具。它允许我们创建各种静态、动态、交互式的可视化图形&#xff0c;帮助我们更好…

企业工厂如何逆风翻盘:VR全景打破多重桎梏

现阶段&#xff0c;制造业工厂面临的困境&#xff0c;就是用着上百万的设备&#xff0c;却赚着几毛钱的利润。传统的工厂参观方式也存在着很多的局限性&#xff0c;例如时间上不方便、不能实地参访、生产线具有隐患等&#xff0c;都会使得参观者不能深入地了解工厂的生产环境和…