操作系統: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 試試就好了!
新聞熱點
疑難解答
圖片精選