1. 程式人生 > >Ubuntu上模擬ARM開發環境

Ubuntu上模擬ARM開發環境

有一個很明確的方向是我需要一個ARM版本的ubuntu系統,編譯一些ARM平臺庫是十分方便的,其實這方面是有經驗的,之前使用RK3188主機板執行Ubuntu,編譯一些庫極為容易,至少依賴問題很好解決。而不再像兩年前那樣只使用一個交叉工具鏈來編譯一個庫,需要順帶編譯很多依賴庫。

用主機板覺得麻煩,就想著能不能有像VMware這樣的虛擬機器模擬ARM CPU呢?根據《Linux裝置驅動開發詳解 第三版》上介紹有一個叫QEMU的可以模擬ARM CPU。試用一下完全非人類,最後還找了一個封裝圖形介面的AQEMU,還是不好用。不能跑Ubuntu-arm版本系統;最後根據vmware arm關鍵詞找到過armware,也並不好用;最後想起來了 Android開發環境中的模擬器是可以模擬ARM的,那我以模擬器(英文:emulator)為關鍵詞找到了新大陸 ubuntu-sdk。它是一個ubuntu-touch平臺,也就是ARM平臺做的一套類似Android開發環境,根據

Ubuntu SDK 安裝,勉強裝環境裝起來了,中間犯了不少錯誤,比如我嘗試在VMware中跑Ubuntu-sdk的模擬器,原來這樣是不行的,這裡總結一句是目前ubuntu-sdk還不太完善,安裝後自己的主Ubuntu系統顯示很亂,另外一點是ubuntu-arm模擬器執行速度實在是太慢了,啟動就得40分鐘,進去後卡得不行。x86版本還好一些,但是隻目前想要的是ARM版本。為了這個像找一個不用硬體的模擬器做ARM開發,也真是夠難的,或許幾年後所有的東西都變得成熟了就會好一些。

補充:最痛苦的是Ubuntu不是編譯後的映象,而是就像裝系統一樣從網上下載iso,然後自動化配置,時間上十分急人。

最終還是採用了一個ARM開發板,開始主要是通過HDMI連線螢幕,當成一個電腦使用。最後發現很多問題,比如WiFi不好用;就得使用有線網,去網上淘了個 無線轉有線 的神器。最後的開發模式定下來了,Ubuntu主機+ARM開發板+串列埠控制+SSH連線。如果手裡有個小錢,買個Ubuntu arm版本手機也是不錯的,可以網上淘個二手的。不過那都是後事了。

20171003更:
最終採用的是在Android中掛載Ubuntu檔案系統方式,文章在這裡Android手機中跑Ubuntu系統,這種方式的好處在於,解決一堆需要配置網路的問題。可以直接使用Android的網路不需要單獨配置。

<完>