Ubuntu 16.04 安装 arm-linux-gcc 交叉编译工具
工作需要,最近在编译linux嵌入式内核时,需要安装arm-linux-gcc交叉编译,实际上,安装这个交叉编译器的难度没啥。不过,这里有些问题还是值得我去思考和记录下来的。
这个系统的上的编译器用的是是gcc,不过,是gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabihf.tar.xz,当初我就纳闷了,以前用的gcc编译器没带linaro呢,这个是什么意思?
网上一查,才知道自己孤陋寡闻了:
Linaro是一个非盈利性工程组织,旨在为ARM架构提供开源Linux软件和工具的移植和优化:包括GCC工具链,ARM电源管理,Linux内核,图形和多媒体接口开发等。
Linaro由ARM,FreeScale,IBM,Samsung,ST-Ericsson和TI六大IT公司在2010年6月共同创建,成员公司提供工程资源和基金。
Linaro并不是一种Linux发行版,该组织为发行版提供了成熟的软件和工具。它的目标是为厂商使用提供通用的软件和工具基础—使得开发基于Linux产品更加简单和快捷。Linaro的
软件专注于直接与芯片交互的领域例如多媒体,图形,电源管理,内核和启动。
说白了,linaro就是个组织,是个伪arm架构提供开源工具和软件的的组织。的确还挺强大的,学习了。言归正传。
开始安装这个编译器,具体步骤是比较简单的。
A 下载相应的版本(注意,相比你要编译的内核,不要太新也不要低于gcc最低版本限制)
B 在/usr/local下建立目录并把该加压缩的文件拷贝进去。
C 在该文件的bin目录下执行./arm-linux-gnueabi-gcc -v 查看该版本是否在系统上可以使用,不过出现XXX 。。。 gcc version 5.5.0 (Linaro GCC 5.5-2017.10) 说明ok。
D 最后使用sudo vim /etc/bash.bashrc 并在最后添加
#add linux-arm-gcc tools
export PATH=$PATH:/usr/local/arm-linux-tools/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabihf/bin
然后: source /etc/bash.bashrc 如果在任意目录下执行 arm-linux-gnueabi-gcc -v 显示和上面一样的,说明任督二脉打通了,赶紧开始你的编译内核代码之旅吧。
参考文档:
https://releases.linaro.org/components/toolchain/binaries/latest-5/arm-linux-gnueabihf/
https://www.linaro.org/downloads/
Ubuntu 16.04 安装 arm-linux-gcc 交叉编译工具的更多相关文章
- Ubuntu 16.04安装cuda7.5 GCC
http://www.linuxidc.com/Linux/2017-01/139320.htm 在介绍Ubuntu 16.04安装 CUDA7.5开始前,先辨析几个概念GPU.NVIDIA.NVID ...
- Ubuntu 16.04安装Meld文件比对工具替代Beyond Compare
Beyond Compare是商业软件,不建议使用,下载地址:http://www.scootersoftware.com/download.php.下载完直接运行或者通过dpkg安装即可. 其实Li ...
- Ubuntu 16.04安装7zip的图形界面工具PeaZip
其实PeaZip不是7zip的图形界面工具,而是一整套方案,里面包括了7z格式的解压缩等. PeaZip Linux版本只有32位包,如果你使用的是64位Ubuntu系统,那么先打开终端运行下面的命令 ...
- Ubuntu 16.04安装IntelliJ出品的数据库管理工具DataGrip
IntelliJ出品的东西有一个共同特定,就是代码提示做的非常好. DataGrip是除了MySQL Workbench之外的另一个选择. 一.下载 https://www.jetbrains.com ...
- Ubuntu 16.04安装Atom(加强版文本工具)
安装: sudo add-apt-repository ppa:webupd8team/atom sudo apt-get update sudo apt-get install atom 或者直接上 ...
- Ubuntu 16.04安装PPA图形化管理工具Y PPA Manager
安装: sudo add-apt-repository ppa:webupd8team/y-ppa-manager sudo apt-get update sudo apt-get install y ...
- Ubuntu 16.04 安装 Kodi v17 “Krypton” Alpha 2
Ubuntu 16.04 安装 Kodi v17 “Krypton” Alpha 2:sudo add-apt-repository ppa:team-xbmc/xbmc-nightlysudo ap ...
- Ubuntu 16.04安装QQ国际版图文详细教程
因工作需要,我安装了Ubuntu 16.04,但是工作上的很多事情需要QQ联系,然而在Ubuntu上的WebQQ很是不好用,于是在网上搜索了好多个Linux版本的QQ,然而不是功能不全 ...
- Ubuntu12.4 64位 安装 arm linux gcc 4.3.2
一.下载arm linux gcc 4.3.2 http://pan.baidu.com/share/link?shareid=1575352696&uk=2754759285&fid ...
- Ubuntu 16.04安装Matlab 2016b教程
由于代码需要依赖Linux环境,只好尝试着装MATLAB,然而各种问题接踵而至,开始了由MATLAB引发的三天Linux探寻之旅-- 下载Matlab 2016b for Linux https:// ...
随机推荐
- js 菜单收起和展开
- cmake find_package 中,include_directories,target_link_libraries 的值怎么知道?
拿Sophus库为例: find_package(Sophus REQUIRED) include_directories(${Sophus_INCLUDE_DIRS}) target_link_li ...
- 示例:pm_multiple_models 匹配——形状匹配
* This example program shows how to use HALCON's shape-based matching* to find multiple different mo ...
- oracle 连接字符串的问题
未指定的错误,发生了一个 Oracle 错误,但无法从 Oracle 中检索错误信息.数据类型不被支持. 原因是你用的ADO for ORACLE的驱动是微软的Microsoft OLE DB ...
- windows 远程连接“发生身份验证错误 要求的函数不受支持”
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\P ...
- 20175314 《Java程序设计》第六周学习总结
20175314 <Java程序设计>第六周学习总结 教材学习内容总结 第七章:内部类与异常类 内部类:内部类就是在一个类中再定义一个类,这个在类中定义的类就叫做内部类,而包含内部类的类叫 ...
- 页面引入js问题
今日问题:左侧菜单栏多余的菜单不可以滚动,自己找了很长时间,前端同事帮忙找了很长事件,最后帮我找到问题所在. 这里红色部分标识有多余部分,可以滑动是对的.但是滑动了. 问题:jquery引入的地方错了 ...
- 用java开发图形界面项目,如何实现从本地选择图片文件并以二进制流的形式保存到MySQL数据库,并重新现实到面板
- 解决IE浏览器缓存导致AJAX请求数据异常
IE10浏览器会把AJAX请求的数据都缓存下来,然后每次想去刷新数据时发现数据都是一样的,于是导致数据显示异常. 解决方法: 在页面<head>标签里,加上以下声明: <!-- 解决 ...
- python--事务操作
#coding=utf-8 import sys import MySQLdb class TransferMoney(object): def __init__(self,conn): self.c ...