zoukankan      html  css  js  c++  java
  • 嵌入式开发(一) Ubuntu12.04下搭建交叉编译环境

    操作系统:Ubuntu12.04 AMD64位

    交叉编译环境:arm-Linux gcc版本4.4.3

    前言:

         首先理解一下交叉编译的意思。我们要给嵌入式设备写应用程序,但是又不能在嵌入式设备上完成所有的代码开发工作,只能在一台工作PC上完成然后编译成二进制文件上传到嵌入式设备上。但是我们选用的编译工具链不能是工作PC上的,应该是嵌入式设备上的编译工具链,所以,我们要在PC上搭建适用于嵌入式设备的交叉编译工具链。例如,PC上的gcc版本可能是4.6但是arm-linux-gcc的版本却是4.4.3.

    搭建过程:

         一、下载适合自己开发板的交叉编译工具包 本文以arm-linux-4.4.3.tar.bz2为例

         二、解压缩到/usr/local/arm目录下面

    # tar xvf arm-linux-4.4.3.tar.bz2 -C /usr/local/arm
         三、设置环境变量
    # vi /etc/profile
    末尾添加行export PATH=$PATH:/usr/local/arm/arm-linux-4.4.3/bin
         四、导入环境变量
    # source /etc/profile
         五、测试
    # arm-linux-gcc -v
    出现以下画面说明是ok了。。。

    但是很有可能没有这么顺利,楼主我就遇到了一个问题,在输入上面命令后,出现如下错误:

    /home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: 15: exec: /home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc: not found

    在网上查了一下,发现是因为Ubuntu使用的是64位系统,需要安装一些32位的库:

    $ sudo apt-get install ia32-libs

    又因为ia32-libs是一个正在被淘汰的库,所以可能有些它的依赖包是不会被自动下载的,你可以根据他的提示先安装一下ia32-libs的依赖包,最后就可以把它装上了。

    然后再用# arm-linux-gcc -v 试试就好了!

     
    作者: 福尔摩斯の子弟
    出处: http://www.cnblogs.com/holmestian/
    本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    发一注册表监控驱动代码
    Nikto
    在c#使用IOCP(完成端口)的简单示例
    C#中ref和out的使用小结
    Powerful x86/x64 Mini HookEngine
    C语言写的多线程下载器
    快速排序算法c#
    拓扑排序
    Dijkstra算法
    SRM 550 DIV2
  • 原文地址:https://www.cnblogs.com/holmestian/p/3929545.html
Copyright © 2011-2022 走看看