我们在第三章讲解了如何在Linux下进行C程序开发,我们使用的gcc编译器进行代码的编译,编译完,直接在X86架构下的PC下运行的。我们学习的i.MX6 ULL是arm架构的,所以我们需要使用支持arm的编译器并且该编译器在X86架构下运行,这个编译器我们通常称为交叉编译器。

arm交叉编译器有很多种,我们使用Linaro公司的arm交叉编译器,下载地址:https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/arm-linux-gnueabihf/,如图 1所示:

图 1

在图1中有多种arm交叉编译器,我们需要根据安装的Ubuntu系统来选择对应的版本下载:如果安装的是Ubuntu 32位的系统我们需要下载gcc-linaro-4.9.4-2017.01-i686_arm-linux-gnueabihf.tar.xz;如果安装的Ubuntu是64位系统我们需要下载gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz。这两种版本的交叉编译器我们已经放在了光盘资料的“i.MX6UL终结者光盘资料\01_开发及烧写工具\1、交叉编译器”目录下。

下面我们开始在Ubuntu下搭建arm交叉编译器,由于我们安装的是Ubuntu 64位系统,所以我们选择使用编译器“gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz”。首先我们需要通过ssh文件传输工具把arm交叉编译器拷贝到Ubuntu系统下。我们在Ubuntu的用户根目录下建立文件夹“tools”,用来保存一些开发用到的工具。然后使用ssh文件传输工具将arm交叉编译器传输到我们刚才在Ubuntu系统下创建的“tools”目录下,如图 2所示:

图 2

交叉编译器传输到Ubuntu的用户根目录的“tools”目录下以后,然后在终端输入“sudo mkdir /usr/local/arm”命令创建“/usr/local/arm”目录,如图 3所示:

图 3

然后拷贝刚才上传的交叉编译器到“/usr/local/arm”目录下,我们在终端输入命令“sudo cp /home/topeet/tools/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz /usr/local/arm/”,运行结果如图 4所示:

图 4

拷贝完成以后,进入到“/usr/local/arm”目录下,在终端输入:
“sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz”解压arm交叉编译器,如图5所示:

图 5

解压完成以后会生成“gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf”文件夹,这就是我们需要的交叉编译工具,如图 6所示:

图 6

然后我们在终端输入“sudo vi /etc/profile”命令,在文件的最后输入:
“export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin”修改环境变量,如图 7所示:

图 7

然后保存并退出,在终端输入“reboot”命令重新启动Ubuntu系统,使交叉编译环境生效。Ubuntu系统重新起来以后,我们登录到系统,打开终端,输入“arm-linux-gnueabihf-gcc -v”,如果终端有如图4.2.3.8所示的打印信息,说明交叉编译环境搭建成功(如果没有出现8所示的打印信息,需要检查下图 7中的配置填写是否正确)。

图 8

i.MX6ULL终结者搭建交叉编译环境相关推荐

  1. Ubuntu搭建交叉编译环境(arm、mips、powerpc)

    Ubuntu搭建交叉编译环境 说点什么吧 为什么需要交叉编译 交叉编译环境简介 Arm交叉编译环境搭建 Mips交叉编译环境搭建 Powerpc交叉编译环境搭建 说点什么吧 为什么需要交叉编译 如果要 ...

  2. arm 交叉编译找不到so_搭建交叉编译环境并验证

    1. 搭建编译环境并验证 1.1 实验目的 · 掌握嵌入式开发环境.交叉编译器的搭建.安装和配置方法 · 熟悉Linux应用程序的编译.调试方法,能够验证X86平台和ARM平台的差异 1.2 实验内容 ...

  3. Ubuntu 8.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解

    Linux版本:Ubuntu8.04 内核版本:Linux 2.6.24 交叉编译器版本:arm-linux-gcc-3.4.1 交叉编译器下载链接: https://share.weiyun.com ...

  4. Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解

    Linux版本:Ubuntu 12.04 :内核版本:Linux 3.5.0:交叉编译器版本:arm-linux-gcc-4.4.3:交叉编译器下载 见这篇文章http://www.linuxidc. ...

  5. qt5 交叉编译webkit_基于QT平台的交叉编译环境搭建的架构分析

    第三步认识:为什么需要搭建交叉编译环境? 从这点,我们应该明白,这是为了多元化同样也是为了适应不同的环境:举个例子: 话题中心:电脑可以实现看电影的功能,我们需要一直看电影的状态: A.在草原上看电影 ...

  6. hi3531交叉编译环境arm-hisiv100nptl-linux搭建过程

    安装SDK 1.Hi3531 SDK包位置 在"Hi3531_V100R001***/01.software/board"目录下,您可以看到一个 Hi3531_SDK_Vx.x.x ...

  7. linux系统嵌入式编译环境,Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解...

    Linux版本:Ubuntu 12.04 内核版本:Linux 3.5.0 交叉编译器版本:arm-linux-gcc-4.4.3 交叉编译器下载 见这篇文章http://www.linuxidc.c ...

  8. 【华为云技术分享】鲲鹏弹性云服务器GCC交叉编译环境搭建指南

    南七技校林书豪 1.简介 交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码.本指南主要内容为在非ARM架构服务器环境下搭建ARM的GCC编译环境,编译基于ARM架构的应用软件.交叉编译 ...

  9. IMX6ULL驱动开发实战连载-01搭建开发环境

    哈喽,大家好.我是小仲.板子在3.31号就收到了,但是,由于最近一直很忙,拖到了现在才开始搭建环境.接下来的一段时间,会基于野火IMX6ULL开发板写一系列教程,主要侧重于驱动和内核的调试技巧.这方面 ...

最新文章

  1. Libgdx学习笔记:Simple text input
  2. BERT中的词向量指南
  3. redis分布式锁-基本概念与实现方式对比
  4. matplotlib的下载和安装方法
  5. PURE DORM IS GREAT
  6. Python 数据分析三剑客之 Matplotlib(八):等高线 / 等值线图的绘制
  7. 解析poj页面获取题目
  8. leetcode —— 75. 颜色分类
  9. 列举python的数据类型_Python的数据类型
  10. 自动机器学习工具全景图:精选22种框架,解放炼丹师
  11. 利用pandas对MovieLens电影数据分析
  12. 电脑上如何进行录屏?
  13. 2010年3月4日:软件工程基本词汇
  14. 用两天整理出来的python英文单词大全,需要的赶快保存啦
  15. MQTT-mosquitto学习笔记
  16. java石头剪刀布思路_石头剪刀布Java实现
  17. 兽医提醒:狗狗生病的9个征兆,建议铲屎官收藏,以备不时之需!
  18. 机器人 homework2
  19. [转]Berkeley DB实现分析
  20. Flutter Riverpod 全面深入解析,为什么官方推荐它?

热门文章

  1. 如何制作公众号首图?
  2. 【转载】Java 复杂json对象转Map
  3. String类型长度最多是多少?有限制吗?
  4. Qt界面开发之绘制时钟
  5. Redis的发布订阅模式
  6. 想知道你的外网IP吗
  7. Unity引擎基础补充
  8. [RHEL7基础篇-1] 简介及安装
  9. JS中所有遍历的方法
  10. 定位、CSS3的动画