目的:
最近在自學嵌入式,選擇的平台是spv210,所謂工欲善其事,必先利其器。所以,首先的第乙個步驟就是搭建交叉開發環境,記錄過程,以待後查。
平台選擇:
主機:win10 64位
虛擬機器:vmware 12.1 + ubuntu 14.04.4 64位
搭建步驟:
1.選擇交叉編譯工具鏈
2.安裝交叉編譯工具鏈
2.1.將交叉編譯工具鏈複製到虛擬機器中,我使用的是共享資料夾的方式
2.2.解壓交叉編譯工具鏈到/usr/local/arm下
注意:這個目錄本不存在,需要建立。並且操作需要管理員許可權
使用命令:
cd /usr/local/
sudo mkdir arm
cd arm
sudo cp /mnt/hgfs/winshare/arm-2009q3.tar.bz2 .
sudo tar -jxvf arm-2009q3.tar.bz2
2.3.測試安裝是否成功
進入到arm-2009q3/bin目錄下,然後執行arm-none-linux-gnueabi-gcc -v 看能否正確列印版本資訊
使用命令:
cd /uar/local/arm/arm-2009q3/bin
sudo ./arm-none-linux-gnueabi-gcc -v
錯誤及解決:
尷尬的事情發生了,它絲毫沒有給面子的列印出版本號,反而提示一條錯誤:
意思是:不存在這個檔案或者目錄,但是,我再三確認的確是存在的,路徑也沒有問題
其實這個問題是因為我使用的是64位ubuntu造成的,實際上使用那個32位的ubuntu就不會出現這個問題,知道原因了,
解決方式也很簡單,
安裝乙個32位庫就可以了
使用命令:
sudo apt-get update
sudo apt-get install lib32ncurses5
完成後,再次嘗試列印版本資訊。妥妥的出現來
2.4.新增交叉編譯工具鏈路徑到環境變數中
在家目錄下有乙個 .bashrc 的檔案,當前使用者每次開啟終端時都會自動載入這個檔案,所以我們把新增環境變數的語句
加入到檔案中就可以了
新增環境變數的命令:
export path=/usr/local/arm/arm-2009q3/bin:$path
在任意目錄輸入:arm-none-linux-gnueabi-gcc -v ,都可以列印出版本資訊,路徑新增成功,至此,交叉編譯工具鏈的安裝就完成了。
本人所學尚淺,如有錯誤,歡迎指正。
關於SPV210鏈結位址與執行位址的筆記
位置無關碼取值 是通過指令間相對位址取值,而有關碼是通過絕對位址來定址。在arm中最開始的幾句 都是位置無關 採用bl或者b進行跳轉,而有關碼通過ldr pc,lable 進行跳轉,其中lable為鏈結位址。位置有關碼保證鏈結位址與執行位址一致程式才能正常執行。adr r0 start 載入執行位址...
交叉編譯環境搭建
交叉編譯 跨平台編譯 定義 將編譯好的映象檔案,應用程式,執行在與宿主系統不同平台的開發板上 環境搭建 1 tftp伺服器 嵌入式 linux 的 tftp 開發環境包括兩個方面 一是 linux 開發主機端的 tftp server 支援,二是嵌入式目標系統的 tftp client 支援 實現機...
交叉編譯環境 搭建開發環境
一 安裝ubuntu redhat等linux作業系統 二 修改源 可省略 sudo vi etc apt sources.list deb 或直接在 系統 系統管理 軟體源 選擇軟體源 三 更新源列表 sudo apt get update 四 安裝中文環境 系統 系統管理 語言支援 在 支援的語...