zoukankan      html  css  js  c++  java
  • Linux嵌入式交叉编译环境 的搭建【转】

    转自:http://blog.csdn.net/woaixiaozhe/article/details/7395435

    1. 安装标准的C开发环境,由于Linux安装默认是不安装的,所以需要先安装一下(如果已经安装好的话,就可以免去这一步了):
      #sudo apt-get install gcc g++ libgcc1 libg++ make gdb

    2. 下载arm-linux-gcc-3.4.1.tar.bz2到任意的目录下,我把它下载到了我的个人文件夹里 /home/wrq
      arm-linux-gcc-3.4.1.tar.bz2 的下载地址如下:http://download.csdn.net/detail/woaixiaozhe/4173915

    3. 解压 arm-linux-gcc-3.4.1.tar.bz2
       #tar -jxvf arm-linux-gcc-3.4.1.tar.bz2
      解压过程需要一段时间,解压后的文件形成了 usr/local/ 文件夹,进入该文件夹,将arm文件夹拷贝到/usr/local/下
      # cd usr/local/ 
      #cp -rv arm /usr/local/
      现在交叉编译程序集都在/usr/local/arm/3.4.1/bin下面了

    4.  修改环境变量,把交叉编译器的路径加入到PATH。(有三种方法,强烈推荐使用方法一)
         方法一:修改/etc/bash.bashrc文件
                     #vim /etc/bash.bashrc
                     在最后加上:
                    export PATH=$PATH:/usr/local/arm/3.4.1/bin
                    export PATH
         方法二:修改/etc/profile文件:
                    # vim /etc/profile
                   增加路径设置,在末尾添加如下,保存/etc/profile文件:
                   export PATH=$PATH:/usr/local/arm/3.4.1/bin
        方法三:#export PATH=$PATH:/usr/local/arm/3.4.1/bin
                      注:(这只能在当前的终端下才是有效的!)

    5. 立即使新的环境变量生效,不用重启电脑:
         对应方法一:#source /root/.bashrc
        对应方法二:# source /etc/profile

    6. 检查是否将路径加入到PATH:
          # echo $PATH
      显示的内容中有/usr/local/arm/bin,说明已经将交叉编译器的路径加入PATH。至此,交叉编译环境安装完成。


    7. 测试是否安装成功
       # arm-linux-gcc -v
      上面的命令会显示arm-linux-gcc信息和版本


    8.编译Hello World程序,测试交叉工具链
      写下下面的Hello World程序,保存为hello.c
        #include <stdio.h>
        int main()
        {
        printf("Hello World! ");
           return 0;
        }
       
        执行下面的命令:
        # arm-linux-gcc -o hello hello.c
        源程序有错误的话会有提示,没有任何提示的话,就是通过了,就可以下载到ARM目标板上运行了! 接着可以输入file hello的命令,查看生成的hello文件的类型,要注意的是  生成的可执行文件只能在ARM体系下运行,不能在其于X86的PC机上运行。

  • 相关阅读:
    mysql----show slave status G 说明
    mysqldump 的方式来搭建master-->slave 的复制架构
    C++----练习--string 从文件中一个一个单词的读直到文件尾
    python 全排列combinations和permutations函数
    什么是restful api
    git知识点
    Hash算法解决冲突的方法
    python之单例设计模式
    Linux常用命令大全
    SQLAlchemy中时间格式化及将时间戳转成对应时间的方法-mysql
  • 原文地址:https://www.cnblogs.com/sky-heaven/p/8625288.html
Copyright © 2011-2022 走看看