zoukankan      html  css  js  c++  java
  • 【linux】UBUNTU 12.04下傻瓜式简单安装arm-linux-gcc等gnu arm toolchain交叉编译工具

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

    邮箱: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. 验证无误的工具链安装(能正常编译linuxbusybox等):

    可以去这个地址下载工具链,是作者上传的,要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会自动帮忙下载,不用手动操作,工具是用来用的,如果花了太多时间在工具链的安装上,那么得不偿失,我之前就走了很多弯路,所以写了这篇文章,按照文中方法可以非常快速的安装交叉编译工具,欢迎转载,让更多的人免于交叉环境的安装之苦。

  • 相关阅读:
    【计算机视觉】深度学习视觉领域常用数据集汇总
    【计算机视觉】常用图像数据集
    【计算机视觉】ImageNet介绍
    【神经网络与深度学习】卷积与反卷积
    【视频开发】【计算机视觉】全景视频拼接关键技术
    【计算机视觉】分辨率与超分辨率图像重建
    【计算机视觉】【神经网络与深度学习】深度学习在图像超分辨率重建中的应用
    【VS开发】【C/C++开发】关于boost库的C++11导致的undefined符号问题
    【VS开发】【C/C++开发】vs2015编译boost 64位
    【视频开发】【计算机视觉】相机标定(Camera calibration)《二》
  • 原文地址:https://www.cnblogs.com/embedded-tzp/p/4443743.html
Copyright © 2011-2022 走看看