欢迎转载,转载时请保留作者信息,谢谢。

邮箱:tangzhongp@163.com

博客园地址:http://www.cnblogs.com/embedded-tzp

Csdn博客地址:http://blog.csdn.net/xiayulewa

 

 

原文链接: http://blog.csdn.net/xiayulewa/article/details/19784793

这篇文章是我写的,xiayuleWA 是我在csdn的账号。

1. 验证无误的工具链安装(能正常编译linux,busybox等):

可以去这个地址下载工具链,是作者上传的,要2分,当是辛苦分了,要免费的可以去min2440官网下载,地址我在下面也贴出来了。

CSDN下载链接:http://download.csdn.net/detail/xiayulewa/8615245

免费版的:http://arm9download.cncncn.com/mini2440/linux/arm-linux-gcc-4.4.3-20100728.tar.gz

使用方法:

  解压到某个文件夹(目录),如/usr/local/arm-cross-tool/下,再添加环境变量就OK了,如在/etc/profile文件后添加:
        #arm-linux-gcc
        export PATH=$PATH:/usr/local/arm-cross-tool/friendly/toolschain/4.4.3/bin,交叉工具就可以用了(当然在shell中需要source  /etc/profile).

eg: arm-linux-gcc  -Wall arm_main.c

 

2. 下面官方原版安装,下面的文章是之前写的,那时并没有完全验证,所以实际使用会有些问题,编译linux内核没问题,但是编译busybox时会因缺少某些库出错,当然可以自己去完善工具链,但是那就太麻烦了,所以下面的文章仅供阅读,实用性不大了。

如果是ubuntu 12.04,输入: 

sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded ;sudo apt-get update ; sudo apt-get install gcc-arm-none-eabi;

cd /usr/bin;

ls | gawk '{if(match($0, "(arm-none-eabi-)(.*)", arr)){system("sudo ln  " arr[1] arr[2]  "  arm-linux-"arr[2])}}'; 

arm-linux-gcc等工具链就安装好了,如果你是实用主义者,那就直接跳到华丽的分割线后去吧,下面的东西可以跳过。

 

去官网 https://launchpad.net/~terry.guo/+archive/gcc-arm-embedded

按照其步骤安装就是了:我在ubunt 12.04安装成功的,其它版本没有试过,官网说支持:Ubuntu 10.04/12.04/13.04 32 and 64 bit。

Step1: Inside Ubuntu, open a terminal and input
       "sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded"

Step2: Continue to input
       "sudo apt-get update"

Step3: Continue to input to install toolchain
       "sudo apt-get install gcc-arm-none-eabi"

简单翻译就是:

1. 打开terminal终端:为添加源,输入:

sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded

2:输入:sudo apt-get update

3:输入: sudo apt-get install gcc-arm-none-eabi

 

如果还想更偷懒,就把上面三条命令合在一起写了:

sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded && sudo apt-get update && sudo apt-get install gcc-arm-none-eabi

-----------------------------------------------------------------------------------

---------------华丽的分割线--------------------------------------------------------

-----------------------------------------------------------------------------------

这样就安装好了,工具链路径在/usr/bin/目录下,具体可以用 ls | grep arm查看;

按照最开始的方法应该有arm-linux-gcc等了,如果不会awk,那就老实手动修改链接。

cd /usr/bin

sudo ln arm-none-eabi-gcc arm-linux-gcc

sudo ln arm-none-eabi-ar  arm-linux-ar

.....

 

测试:建立test.c文件,内容

  1. #include <stdio.h> 
  2.    
  3. int main(void
  4.     return 0; 

编译: arm-linux-gcc test.c

出错了?安装有问题?

不是,去官网:https://launchpad.net/gcc-arm-embedded,右边下载列处有readme.txt,点开看看就知道了,按照里面说明,按照其中一种方法重新编译:

arm-none-eabi-gcc --specs=rdimon.specs  test.c

成功。

 

优点:缺少的依赖包ubuntu会自动帮忙下载,不用手动操作,工具是用来用的,如果花了太多时间在工具链的安装上,那么得不偿失,我之前就走了很多弯路,所以写了这篇文章,按照文中方法可以非常快速的安装交叉编译工具,欢迎转载,让更多的人免于交叉环境的安装之苦。

【linux】UBUNTU 12.04下傻瓜式简单安装arm-linux-gcc等gnu arm toolchain交叉编译工具的更多相关文章

  1. Ubuntu 12.04下虚拟磁带库mhvtl的安装和使用

      项目需要连接一下昆腾虚拟磁带库DXI 6701 ,这玩意太贵,不好得到,先弄个虚拟软件测试了, 网上了一下,有这个软件: mhvtl   主页: https://sites.google.com/ ...

  2. ubuntu 12.04下 ns3的下载 安装

    这个的内容我主要是参考了 http://blog.sina.com.cn/s/blog_7ec2ab360102wwsk.html 这个链接的学习,基本上过程没有出现的问题. 就是这个链接少了测试的一 ...

  3. Ubuntu 12.04下GAMIT10.40安装说明

    转载于:http://www.itxuexiwang.com/a/liunxjishu/2016/0225/164.html?1456481297 Ubuntu 12.04下GAMIT10.40安装步 ...

  4. Angularjs学习---angularjs环境搭建,ubuntu 12.04下安装nodejs、npm和karma

    1.下载angularjs 进入其官网下载:https://angularjs.org/‎,建议下载最新版的:https://ajax.googleapis.com/ajax/libs/angular ...

  5. [转]ubuntu(12.04)下, 命令 ,内核 源代码的获取

    [转]ubuntu(12.04)下, 命令 ,内核 源代码的获取 http://blog.chinaunix.net/uid-18905703-id-3446099.html 1.命令:例如:要查看l ...

  6. Ubuntu 12.04 下安装 Eclipse

    方法一:(缺点是安装时附加openjdk等大量程序并无法去除,优点是安装简单) $ sudo apt-get install eclipse 方法二:(优点是安装内容清爽,缺点是配置麻烦)1.安装JD ...

  7. Ubuntu 12.04下安装QQ 2012 Beta3(转)

    Ubuntu 12.04下安装QQ 2012 Beta3   由于wine的发展非常迅速.现在网上的利用老版本的wine来安装QQ2012的教程已经有些过时了.实际上操作起来非常简单: 第一步:Ctr ...

  8. [转载] Ubuntu 12.04下安装git,SSH及出现的Permission denied解决办法

    如何安装ssh http://os.51cto.com/art/201109/291634.htm 仅需要阅读至成功开启ssh服务即可 http://www.linuxidc.com/Linux/20 ...

  9. Ubuntu 12.04下安装QQ 2012 Beta3

    Ubuntu 12.04下安装QQ 2012 Beta3   由于wine的发展非常迅速.现在网上的利用老版本的wine来安装QQ2012的教程已经有些过时了.实际上操作起来非常简单: 第一步:Ctr ...

随机推荐

  1. VC++中的头文件包含问题

    在一些大的工程中,可能会包含几十个基础类,免不了之间会互相引用(不满足继承关系,而是组合关系).也就是需要互相声明.好了,这时候会带来一些混乱.如果处理得不好,会搞得一团糟,根据我的经验,简单谈谈自已 ...

  2. linux之文本编辑器

    [目标] 管理员在进行系统操作的时候,不可避免地会对文本进行修改,如进行各种服务程序配置文件的修改,使程序对用户提供不同的服务效果.在本章我们向大家介绍Linux上常见的编辑器ed.vi.emacs, ...

  3. c/c++内存分配方式(转)

    原文链接:http://blog.csdn.net/jing0611/article/details/4030237 1.内存分配方式 内存分配方式有三种: [1]从静态存储区域分配.内存在 程序编译 ...

  4. MSSQLServer的备份与还原

    最近用到了mssql2000的数据备份还原到2008上, 在备份2000时,一定注意要备份成一个文件,就是目标那里只添加一个就好,(否则待会还原数据库时要添加这两个文件,要不就报“备份了几个簇,只提供 ...

  5. 树莓派变成一个Web服务器: nginx + php + sqlite

    将树莓派变成一个Web服务器,通过访问网页,就可以控制树莓派,比如:查看摄像头\开灯等等. 一想到Linux Web服务器,我们首先想到的是,Apache + MySql + Php. 树莓派可以安装 ...

  6. ZOJ 3329 One Person Game 【概率DP,求期望】

    题意:有三个骰子,分别有k1,k2,k3个面. 每次掷骰子,如果三个面分别为a,b,c则分数置0,否则加上三个骰子的分数之和. 当分数大于n时结束.求游戏的期望步数.初始分数为0 设dp[i]表示达到 ...

  7. 基于FPGA的DW8051移植(三)

    总结一下问题: 1) http://www.cnblogs.com/sepeng/p/4137405.html  基于FPGA的DW8051移植(一)里面用modelsim观测波形发现程序进入了ida ...

  8. SMTP邮件传输协议发送邮件和附件(转)

    1.     SMTP 常用命令简介 1). SMTP 常用命令 HELO/EHLO 向服务器标识用户身份 MAIL 初始化邮件传输 mail from: RCPT 标识单个的邮件接收人:常在MAIL ...

  9. JavaScript 中的日期和时间

    前言 本篇的介绍涵盖以下部分: 1. 时间标准指的是什么?UCT和GMT 的概念.关联和区别? 2. 时间表示标准有哪些? 3. JS 中时间的处理 日期时间标准 日期的标准就不多说了 -- 公元纪年 ...

  10. UML九种图 之 包图和对象图

    前言     对象图和包图依然是对系统的静态的描写叙述.UML九种图加上包图,事实上是十幅图. 包图     1.构成           2.包中的元素      类.接口.用例.构件.其他包等.( ...