工欲善其事,必先利其器!软件工具的选择与使用,是开发人员必须重视的事情。

我这里在VM虚拟机安装的CentOS 6.5,开发编译基于ARM的嵌入式Linux,安装了几个版本的交叉编译器,以下是如何切换各个版本:永久生效,而不是换个控制台或是换个用户或是重新启动系统失效!!!

就像Windows一样,VM虚拟机Linux也可以设置一环境变量,这样执行命令,就不用输入全部的路径了,否则,还需要记住大量的路径,很麻烦。首先安装交叉编译器。
我使用的为:
arm-2010q1-202-arm-none-linux-gnueabi.tar.bz2(目前测试下来,最稳定了,不高也不低,不旧也不新。)
解压缩:
[root@zhangsz Desktop]# tar  xjvf   arm-2010q1-202-arm-none-linux-gnueabi.tar.bz2 -C /opt/
最好创建在/opt/目录下。
设置环境变量:
[root@zhangsz Desktop]# gedit /etc/profile
这里为了永久生效,如在控制台shell输入:arm- 点tab键,就可以得到arm-none-linux-gnueabi-  
设置好环境变量后
[root@zhangsz Desktop]# source /etc/profile
然后注销或是重启系统!(否则只有在当前控制台有效!)
重新登录后永久生效!!
如果更改另一个版本的,只要在/etc/profile里注释掉不用的,设置好你想要的就可以了。
然后验证效果:
[root@zhangsz Desktop]# arm-none-linux-gnueabi-gcc -v
Using built-in specs.
Target: arm-none-linux-gnueabi
Configured with: /scratch/julian/2010q1-release-linux-lite/src/gcc-4.4-2010q1/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=arm-none-linux-gnueabi --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --enable-extra-sgxxlite-multilibs --with-arch=armv5te --with-gnu-as --with-gnu-ld --with-specs='%{funwind-tables|fno-unwind-tables|mabi=*|ffreestanding|nostdlib:;:-funwind-tables} %{O2:%{!fno-remove-local-statics: -fremove-local-statics}} %{O*:%{O|O0|O1|O2|Os:;:%{!fno-remove-local-statics: -fremove-local-statics}}}' --enable-languages=c,c++ --enable-shared --disable-lto --enable-symvers=gnu --enable-__cxa_atexit --with-pkgversion='Sourcery G++ Lite 2010q1-202' --with-bugurl=https://support.codesourcery.com/GNUToolchain/ --disable-nls --prefix=/opt/codesourcery --with-sysroot=/opt/codesourcery/arm-none-linux-gnueabi/libc --with-build-sysroot=/scratch/julian/2010q1-release-linux-lite/install/arm-none-linux-gnueabi/libc --with-gmp=/scratch/julian/2010q1-release-linux-lite/obj/host-libs-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --with-mpfr=/scratch/julian/2010q1-release-linux-lite/obj/host-libs-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --with-ppl=/scratch/julian/2010q1-release-linux-lite/obj/host-libs-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --with-cloog=/scratch/julian/2010q1-release-linux-lite/obj/host-libs-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --disable-libgomp --enable-poison-system-directories --with-build-time-tools=/scratch/julian/2010q1-release-linux-lite/install/arm-none-linux-gnueabi/bin --with-build-time-tools=/scratch/julian/2010q1-release-linux-lite/install/arm-none-linux-gnueabi/bin
Thread model: posix
gcc version 4.4.1 (Sourcery G++ Lite 2010q1-202) 
[root@zhangsz Desktop]# 
安装切换成功,可以使用了。

嵌入式ARM+Linux 多个不同版本的交叉编译器的切换方法相关推荐

  1. linux glog 0.50版本 设置交叉编译器生成静态库

    目标:设置glog的交叉编译器,生成静态库libglog.a: 步骤: (1)下载最新版本的glog源码,最新版本0.050(2021.08.23) https://github.com/google ...

  2. 嵌入式arm linux Java运行环境搭建和注意事项

    嵌入式arm linux Java运行环境搭建和注意事项 我的开发硬件环境 搭建步骤 1. 下载 ORacle 公司的ejdk-8u211-linux-arm-sflt.tar.gz(软件浮点版本,这 ...

  3. 嵌入式基于Linux电机控制,基于嵌入式arm+linux平台的直流电机调速控制系统.pdf

    2012--2013 学年第 二 学期 物电 学院期末考试卷 嵌入式系统与应用 学号 : 姓名 : 班级 : 成绩: 评语: 装 订 (考试题目及要求) 嵌入式大作: 采用实验箱上的电位器作为信号输入 ...

  4. 嵌入式arm linux设置登录用户和用户密码

    最近在开发基于arm linux的集中器,出于保护系统的目的,需要给系统设置登录用户名和密码,因此就在网上查询了下怎样给嵌入式arm linux系统设置登录用户名和密码的方法,结果如下: 设置登录用户 ...

  5. 给嵌入式ARM+Linux的初学者

    本文写给已经听过或接触过嵌入式并对此产生兴趣,可是对于嵌入式觉得无从下手的初学者. 0. 为什么要写这篇 我以前读研的时候选过一门嵌入式ARM的选修课,课程在实验室中进行,每个同学一个ARM开发板,老 ...

  6. 嵌入式arm linux产品,基于ARM——Linux的嵌入式产品平台构建

    摘要: 随着计算机技术的发展,嵌入式系统已成为计算机领域一个重要组成部分,并成为近年来新兴的研究热点.ARM7TDMI是一种高效,低功耗的RISC处理器,以该内核为核心的 LPC2210 是一款基于以 ...

  7. linux下mips裸机编译,裸机交叉编译器输入

    裸机交叉编译器的输入限制是什么-因为它不编译带有指针或mallocs的程序-或任何需要比底层硬件更多的东西-.还有1如何找到这些局限性.. 我还想问一下-我为目标mips构建了交叉编译器..我需要使用 ...

  8. cmake linux 交叉编译,[CMake]CMake设置arm-linux-gcc交叉编译器

    标签: cmake 交叉编译器 arm-linux-gcc 分类: 开发工具/开发环境 主机:Ubuntu18.04 交叉编译器:arm-linux-gcc CMake在ubuntu系统下默认使用系统 ...

  9. 嵌入式arm linux工控机,ARM工控机和X86嵌入式工控机的区别

    四信工控机采用ARM架构的处理器结合Android操作系统,动力强劲,轻盈优雅,为移动互联网时代的智能售货机带来全新的解决方案.ARM工控机和X86有什么不一样的地方呢? arm和x86这两个架构之间 ...

最新文章

  1. 强大自己,从学习开始!2020年最有内容的订阅号,每一个都是万里挑一!
  2. 解剖人脸识别从无到有的发展史
  3. OpenCV学习资料收集
  4. 【Python】蜗牛排序
  5. sqlmap mysql案例_sqlmap简单mysql注入演示附截图
  6. opencv+pythons相机标定源码解析
  7. 记录某对比软件注册 版本4
  8. 工具用途_小工具大用途:万能扳手、开瓶器、开箱器,DIY16种用法,玩过吗
  9. oracle11g创建表空间大文件,oracle11g创建表空间 sql语法
  10. STM32CubeIDE教程-现场表达式切换数字进制表示
  11. python代码技巧_几个小技巧让你的Python代码更Pythonic
  12. 查询SQLSERVER执行过的SQL记录(历史查询记录)
  13. html层重叠,HTML/CSS相关问题 z-Index层重叠顺序
  14. python之定制多种彩虹色爱心
  15. 乌班图服务器应用,Ubuntu下安装Apache
  16. MyBatis基础:MyBatis入门(1)
  17. C语言房地产销售管理系统,房地产销售管理系统的设计与实现
  18. 【人工智能】重磅发布人工智能与机器学习全景式概览
  19. 阿里面试官:说一下公平锁和非公平锁的区别?
  20. Android集成环信IM,实现聊天置顶功能

热门文章

  1. 爱数科技python开发岗面试
  2. centos7 复制时发生错误 无法复制文件 windows复制文件到linux
  3. 小灰灰的springboot的学习之路(一):在MyEclipse中创建SpringBoot项目
  4. 使用bat批处理文件启动.exe程序
  5. oracle 49152,使用 snoop 命令监视包传送 - Oracle Solaris 管理:IP 服务
  6. GsyVideoPlayer视频分析使用
  7. 正态分布均值μ的极大似然估计推导
  8. python读取CSV文件中温度值绘制3D折线图
  9. CSS+HTML快速入门 链接样式雪碧图(案例)
  10. 用多个Kinect体感摄像头实现真正360度运动捕捉系统