迅爲IMX6ULL開發板搭建交叉編譯環境

基於迅爲IMX6ULL開發板

我們在第三章講解了如何在 Linux 下進行 C 程序開發,我們使用的 gcc 編譯器進行代碼的編譯,編譯完,直接在 X86 架構下的 PC 下運行的。我們學習的 i.MX6 ULL 是 arm 架構的,所以我們需要使用支持 arm 的編譯器並且該編譯器在 X86 架構下運行,這個編譯器我們通常稱爲交叉編譯器。arm 交 叉 編 譯 器 有 很 多 種 , 我 們 使 用 Linaro 公 司 的 arm 交 叉 編 譯 器 , 下 載 地 址 :

releases.linaro.org/components/toolchain/binaries/4.9-2017.01/arm-linux-gnueabihf/

如圖 4.3.1 所示

 

在圖 4.3.1 中有多種 arm 交叉編譯器,我們需要根據安裝的 Ubuntu 系統來選擇對應的版本下載:如果安裝的是 Ubuntu 32 位的系統我們需要下載 gcc-linaro-4.9.4-2017.01-i686_arm-linux-gnueabihf.tar.xz;

如果安裝的 Ubuntu 是 64 位系統我們需要下載gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz。這兩種版本的交叉編譯器我們已經放在了光盤資料的“i.MX6UL 終結者光盤資料\01_開發及燒寫工具\1、交叉編譯器”目錄下。

下面我們開始在 Ubuntu 下搭建 arm 交叉編譯器,由於我們安裝的是 Ubuntu 64 位系統,所以我們選擇使用編譯器“gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz”。首先我們需要通過 ssh 文件傳輸工具把 arm 交叉編譯器拷貝到 Ubuntu 系統下。我們在 Ubuntu 的用戶根目錄下建立文件夾“tools”,用來保存一些開發用到的工具。然後使用 ssh 文件傳輸工具將 arm 交叉編譯器傳輸到我們剛纔在 Ubuntu 系統下創建的“tools”目錄下,如圖 4.3.2 所示:

 

交叉編譯器傳輸到 Ubuntu 的用戶根目錄的“tools”目錄下以後,然後在終端輸入“sudo mkdir /usr/local/arm”命令創建“/usr/local/arm”目錄,如題 4.3.3 所示:

 

 

然後拷貝剛纔上傳的交叉編譯器到“/usr/local/arm”目錄下,我們在終端輸入命令“sudo

/home/topeet/tools/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz/usr/local/arm/”,運行結果如圖 4.3.4 所示:

 

 

拷貝完成以後,進入到“/usr/local/arm”目錄下,在終端輸入“sudo tar -vxf

gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz”解壓 arm 交叉編譯器,如圖 4.3.5 所示:

 

解壓完成以後會生成“gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf”文件夾,,這就是我們需要的交叉編譯工具,如圖 4.3.6 所示:

 

 

然後我們在終端輸入“sudo vi /etc/profile”命令,在文件的最後輸入“export

PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin”修改環境變量,如圖 4.3.7 所示:

 

然後保存並退出,在終端輸入“reboot”命令重新啓動 Ubuntu 系統,使交叉編譯環境生效。Ubuntu 系統重新起來以後,我們登錄到系統,打開終端,輸入“arm-linux-gnueabihf-gcc -v”,如果終端有如圖 4.2.3.8所示的打印信息,說明交叉編譯環境搭建成功(如果沒有出現 4.3.8 所示的打印信息,需要檢查下圖 4.3.7中的配置填寫是否正確)。


更多內容:https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.34851debJbM0Ye&ft=t&id=614020183147&qq-pf-to=pcqq.c2c

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章