你可能知道Ubuntu是一種流行的Linux發行版,它可以運行在各種個人電腦和伺服器上,提供了友善的使用者介面和豐富的軟體包。但是,你知道Ubuntu也可以運行在ARM架構的裝置上嗎? ARM架構是一種低功耗、高效能的處理器設計,它廣泛應用於智慧型手機、平板電腦、樹莓派等裝置上。 Ubuntu ARM Linux是專為ARM架構裝置客製化的Ubuntu版本,它可以讓你在這些裝置上享受Ubuntu的優點和特色。本文將介紹Ubuntu ARM Linux的主要特點、安裝方法和使用技巧,讓你能夠輕鬆地在ARM架構裝置上使用Ubuntu。
安裝環境
首先簡單介紹一下,所謂的搭建交叉編譯環境,即安裝、設定交叉編譯工具鏈。在該環境下編譯出嵌入式Linux系統所需的作業系統、應用程式等,然後再上傳到目標機上。
交叉編譯工具鍊是為了編譯、連結、處理和偵錯跨平台體系結構的程式碼。對於交叉開發的工具鏈來說,在檔案名稱上加了一個前綴,用來區別本地的工具鏈。例如,arm-linux-表示是對arm的交叉編譯工具鏈;arm-linux-gcc表示是使用gcc的編譯器。除了體系結構相關的編譯選項以外,其使用方法與Linux主機上的gcc相同,所以Linux程式設計技術對於嵌入式同樣適用。不過,並不是任何一個版本拿來都能用,各種軟體包往往有版本匹配問題。例如,編譯核心時需要使用arm-linux-gcc-4.3.3版本的交叉編譯工具鏈,而使用arm-linux-gcc-3.4.1的交叉編譯工具鏈,則會導致編譯失敗。
那麼gcc和arm-linux-gcc的差別是什麼呢?差別就是gcc是linux下的C語言編譯器,編譯出來的程式在本地執行,而arm-linux-gcc用來在linux下跨平台的C語言編譯器,編譯出來的程式在目標機(如ARM平台)上執行,嵌入式開發應使用嵌入式交叉編譯工具鏈。
將壓縮包arm-linux-gcc-4.4.3.tar.gz存放在一個目錄下,這個目錄就是你等會解壓縮的目錄,以後這個目錄就不能隨便刪掉了,我的存放路徑是/home/song/software,如下圖,記住這個路徑,等一下還會用到。
#使用tar指令:tar zxvf arm-gcc-4.4.3.tar.gz將software資料夾下的arm-linux-gcc-4.4.3.tar.gz解壓縮安裝到目前目錄如下圖
#
透過下圖可以看到解壓縮成功了,並且解壓縮後的檔案存放在了/home/song/software/opt/FriendlyARM/toolschain/4.4.3資料夾下,如下圖所示,這個存放路徑可得記住,如下圖
接下來配置系統環境變量,把交叉編譯工具鏈的路徑加入環境變數PATH中去,這樣就可以在任何目錄下使用這些工具。記下上一個步驟中的安裝路徑,使用指令:vim /etc/profile 編輯profile文件,新增環境變數。
#
在profile中最後一行新增:export PATH=$PATH:/home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin這個路徑就是那個bin目錄所在的路徑,可能你的不一樣,按照你實際的目錄填就可以了,如下圖32行
寫完保存就好了
使用指令:source /etc/profile 讓環境變數生效
在終端機上輸入指令arm-linux再按Tab鍵,可以看到下圖,說明環境變數設定成功了
#使用指令:arm-linux-gcc -v 會出現下面的錯誤提示:/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
#
意思是造成這種問題的原因是由於Ubuntu12.04用的是64位元的,解決方法就是使用指令:sudo apt-get install ia32-libs 裝一些32位元的函式庫。
#待安裝完32位元的函式庫之後,再使用指令:arm-linux-gcc -v,這次就成功了,如下圖
#驗證,編譯一個hello.c檔
#
使用指令:arm-linux-gcc hello.c -o hello 看是否編譯成功
#
可見成功產生了二進位檔案。
總結
#其實在安裝過程中,會出現各種各樣的錯誤,一般就是庫文件安裝不完整,大家可以把錯誤訊息直接複製,到網上搜尋一下,一般都能解決,這裡希望大家在學習Linux時多一點耐心。
以上是Ubuntu ARM Linux:適用於ARM架構裝置的優秀作業系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!