前段时间由于工作原因,将虚拟机重装了,由原来的Ubuntu 12.04(32位)升级成了Ubuntu 16.04(64位)。自然,原来安装在Ubuntu 12.04中的所有mini2440开发板相关的工具和源码,都要重装一遍。今天刚好得空,于是就开始整。

第一步当然是安装交叉编译器了,仍然是友善之臂arm-linux-gcc 4.4.3的版本,按照官方手册的步骤,直接解压,然后添加环境变量,一气呵成。可是,当我注销完重新登录之后,输入命令时,系统却给出了一个出错提示:

leon@Ubuntu:~$ arm-linux-gcc -v
/opt/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: 15: exec: /opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc: not found

之前多次安装都很正常,这次怎么就出错了呢?而且这个错误很奇怪,以前从未遇到过类似的错误。反复检查了.bashrc文件之后,确认我配置的环境变量是没有问题的,那么问题究竟出在哪里呢?

思来想去,直接跑到arm-linux-gcc的目录下,直接运行原始文件,错误依旧:

leon@Ubuntu:/opt/FriendlyARM/toolschain/4.4.3/bin$ ./arm-linux-gcc -v
./arm-linux-gcc: 15: exec: /opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc: not found

此时,不经意的对原始文件进行了一下分析,却有了一个惊人的发现:

leon@Ubuntu:/opt/FriendlyARM/toolschain/4.4.3/bin$ file /opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc
/opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.9, BuildID[sha1]=07b2409f8703af43f9018f5864fb10bbafe9039e, not stripped

这里有个关键字,让我一下找到了问题的源泉:“32-bit“。因为我现在的系统是64位的,无法兼容运行32位的交叉编译器,必须安装一个32位的库才可以。解决办法如下:

sudo apt-get install lib32ncurses5 lib32z1

装完之后,再次输入命令,一切OK!

leon@Ubuntu:~$ arm-linux-gcc -v
Using built-in specs.
Target: arm-none-linux-gnueabi
Configured with: /opt/FriendlyARM/mini2440/build-toolschain/working/src/gcc-4.4.3/configure --build=i386-build_redhat-linux-gnu --host=i386-build_redhat-linux-gnu --target=arm-none-linux-gnueabi --prefix=/opt/FriendlyARM/toolschain/4.4.3 --with-sysroot=/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi//sys-root --enable-languages=c,c++ --disable-multilib --with-arch=armv4t --with-cpu=arm920t --with-tune=arm920t --with-float=soft --with-pkgversion=ctng-1.6.1 --disable-sjlj-exceptions --enable-__cxa_atexit --with-gmp=/opt/FriendlyARM/toolschain/4.4.3 --with-mpfr=/opt/FriendlyARM/toolschain/4.4.3 --with-ppl=/opt/FriendlyARM/toolschain/4.4.3 --with-cloog=/opt/FriendlyARM/toolschain/4.4.3 --with-mpc=/opt/FriendlyARM/toolschain/4.4.3 --with-local-prefix=/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi//sys-root --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-c99 --enable-long-long --enable-target-optspace
Thread model: posix
gcc version 4.4.3 (ctng-1.6.1)

玩转mini2440开发板之【64位Ubuntu系统无法运行arm-linux-gcc】相关推荐

  1. 玩转mini2440开发板之【在Ubuntu 14.04下编译安装tslib 1.4版本】

    今天在研究mini2440的QT程序时,发现缺少tslib,于是想办法安装. 一开始想直接去tslib官网上下载最新版本的,但是编译时发现无法通过,于是只好按照大多数网友的做法,取了一个最成熟最稳定的 ...

  2. 64位Ubuntu系统如何运行32位软件

    这个问题是我在Ubuntu16.04下安装教程编译器时遇到的,我安装的是arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz交叉编译器. 1,首先将arm-linux-gcc ...

  3. 玩转mini2440开发板之【下载编译安装运行QT lib/QT Creator/QT程序全过程】

    玩了这么久的mini2440开发板,今天终于完整的将QT研究了一遍,从下载QT库的源码包.配置.编译.安装,然后再到QT Creator的下载.安装和配置,进而新建一个工程,并成功编译,下载到开发板中 ...

  4. 玩转mini2440开发板之【编译u-boot提示没有规则可以创建“XX.o”需要的目标】

    今天继续玩一玩mini2440开发板的u-boot的编译和下载. 首先,交代一下背景,我下载的是tekkamanninja大神于2010.03移植过来的mini2440定制版的u-boot(可以直接去 ...

  5. 玩转mini2440开发板之【在64位WIN7/WIN10系统中安装USB驱动】

    玩mini2440开发板已经很多年了,虽然玩的不怎么精通,但是一直都有在弄.而电脑的操作系统也从最终的32位WinXP提升到了32位的Win7,而今更是到了64位的Win10.然后,却带来了一个很严重 ...

  6. 玩转mini2440开发板之【制作和修改linux启动logo图片】

    今天玩一玩linux启动logo图片的修改和制作. 对于我手头的mini2440开发板,其实厂家友善之臂原本是有配一个转换工具的,用起来会比较简单.但是,它那个工具仅针对32位的Fedora 9系统开 ...

  7. 玩转mini2440开发板之【linux内核的编译和下载】

    今天首先来玩一玩linux内核的编译和下载. 1.背景交代 开发环境:64位的Ubuntu 14.04: 编译工具:arm-linux-gcc 4.4.3: 下载工具:SuperViVi USB Tr ...

  8. 玩转mini2440开发板之【tekkamanninja版的u-boot的编译和烧录】

    今天继续玩一玩mini2440开发板,弄清楚U-boot的编译和烧录过程. 首先,这里交代一个前提,此处所使用的u-boot,是已经移植测试过的,完全可用的版本.就本文而言,我使用的是tekkaman ...

  9. 玩转mini2440开发板之【编译烧录rootfs根文件系统全过程记录】

    前段时间研究了一下如何使用busybox编译和生成最简linux根文件系统(rootfs),并在mini2440开发板上使用NFS网络文件系统进行挂载启动,今天继续研究如何将该根文件系统烧录到开发板上 ...

最新文章

  1. 阳江市2021高考成绩查询一下,广东省阳江市2021年高级会计师考试结束后去哪查成绩?...
  2. Competition——ML/DL:机器学习、深度学习各种计算机视觉、自然语言处理、科学预测等等比赛竞赛简介
  3. 个人分析美国电脑销售现状(网店)
  4. Google上面有自己给你标注好的数据集
  5. 文献学习(part90)--How Can Machine Learning and Optimization Help Each Other Better?
  6. layui jquery ajax,url,type,async,dataType,data
  7. 【Qt开发】QT对话框去掉帮助和关闭按钮 拦截QT关闭窗口的CloseEvent
  8. python get请求 url传参_requests的get请求url参数、url重定向处理及cookies
  9. python的matplotlib的函数_在Python中使用matplotlib绘制条件函数
  10. jquery选择器通配符
  11. signature=45ca03a07a2e888fb57b0d2c351110d7,Attention: Docket Number H054a Dec. 31,2004
  12. Need Preamp And EQ Collection Mac - 英式前置音频放大插件
  13. DirectShow播放视频流程
  14. 【C++教程】04.求1加到100
  15. 区块链的隐私保护问题
  16. 八评腾讯:解密腾讯的中年危机
  17. https://jingyan.baidu.com/article/c45ad29cd06453051753e2e9.html
  18. 西门子S7-1200PLC和KTP700触摸屏通过USS协议控制MM420变频器
  19. Vue+Echarts+百度地图 小例子
  20. Xv6 Operating System Organization

热门文章

  1. f12控制台如何查看consul_基于 Consul 的 Go Micro 客户端服务发现是如何实现的
  2. 上海建桥学院计算机专业,上海建桥学院全国排名 特色专业多与计算机有关
  3. html5 漏洞,HTML 5漏洞可致硬盘遭垃圾数据填满
  4. 【题解】大床Nim (2019,5.23)
  5. 微信OAuth2.0网页授权设置一个域名需多个域名使用的问题
  6. Unit testing Cmockery 简单使用
  7. vlc android 移植版编译
  8. 中嵌协会 第1期“嵌入式与物联网”主题论坛将于2010年6月26日在中关村软件园举行...
  9. 通过IGRP路由协议实现非等值带宽的负载平衡
  10. 安装flex碰到的一个问题及其解决方法(原创)