嵌入式ARM+Linux 多個不同版本的交叉編譯器的切換方法

ARM 595瀏覽

工欲善其事,必先利其器!軟件工具的選擇與使用,是開發人員必須重視的事情。

我這里在VM虛擬機安裝的CentOS 6.5,開發編譯基于ARM的嵌入式Linux,安裝了幾個版本的交叉編譯器,

以下是如何切換各個版本:永久生效,而不是換個控制臺或是換個用戶或是重新啟動系統失效!!!

就像Windows一樣,VM虛擬機Linux也可以設置一環境變量,這樣執行命令,就不用輸入全部的路徑了,否則,還需要記住大量的路徑,很麻煩。
首先安裝交叉編譯器。
我使用的為:
arm-2010q1-202-arm-none-linux-gnueabi.tar.bz2(目前測試下來,最穩定了,不高也不低,不舊也不新。)
解壓縮:
[[email protected]?Desktop]#?tar ?xjvf???arm-2010q1-202-arm-none-linux-gnueabi.tar.bz2?-C /opt/
最好創建在/opt/目錄下。
設置環境變量:
[[email protected]?Desktop]#?gedit /etc/profile
這里為了永久生效,如在控制臺shell輸入:arm- 點tab鍵,就可以得到arm-none-linux-gnueabi-
設置好環境變量后
[[email protected]?Desktop]#?source?/etc/profile
然后注銷或是重啟系統!(否則只有在當前控制臺有效!)
重新登錄后永久生效!!
如果更改另一個版本的,只要在/etc/profile里注釋掉不用的,設置好你想要的就可以了。
然后驗證效果:
[[email protected] 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)?
[[email protected] Desktop]#
安裝切換成功,可以使用了。
七星彩走势图2元网官网