基於Cortex-a15的類比環境搭建——Guest Android

來源:互聯網
上載者:User

使用Android作為Guest系統跑在Qemu中

1、首先進行qemu-system-arm的編譯

./configure --cross-prefix=arm-linux-gnueabi- \--enable-kvm \--enable-fdt \--target-list=arm-softmmu \--static

當然,首先要確定你的系統裡面有相關的交叉編譯的工具。zlib之類的。其次,這樣編譯出來的qemu-system-arm是無法顯示圖形化介面的。圖形化介面的顯示需要依賴於SDL函數庫。

編譯Configure的時候qemu會顯示出相關選項讓你--enable-sdl但是,我在編譯的時候一直都是顯示 cann't find sdl。 Google之,大家都是說要一個libsdl1.2-dev,注意這個是Debian/Ubuntu下的要求。但是我的已經是有了這個庫的。。。莫名其妙的就是無法開啟這個配置。

2、將編譯好的qemu-system-arm拷貝到nfsroot/root下面

3、根據

https://wiki.linaro.org/Platform/Android/AndroidOnFastModels

準備所需要的Android的kernel、以及檔案系統。當然,最後是一個已經做好的啟動盤mmc.bin

這個Android是linaro已經最佳化了的,當然。。你可以自己去repo原始碼然後編譯

4、啟動Host系統。telnet之,僅僅是為了可以複製粘貼命令~=,=

5、將產生的mmc.bin以及解壓的boot檔案夾中的

Initrd和zImagewithDT cp到/srv/nfsroot/root下

6、啟動Guest系統

./qemu-system-arm \-enable-kvm \-kernel zImagewithDT \-sd mmc.bin \-initrd boot/Initrd \-m 512 -M vexpress-a15 -cpu cortex-a15 -nographic \-append "console=ttyAMA0 mem=512M init=/init"

等。很長時間。真的很長。。。然後出現root@android,就是進去了。不過。。很卡很卡很卡很卡很卡。

此時host是一個kernel, Guest是Android~~~~~

最後的最後,一點心得

一開始的時候沒有加上-initrd選項,qemu一直報錯,無法識別mmc.bin的檔案系統類型。

這個是很正常的。我把mmc.bin掛載了之後看過,裡面一共有四個分區,boot的檔案系統是VFat的其他是ext4的,能識別就怪了。。。。

查看了linaro-media-create的製作指令碼,他本來就沒有mkfs的。實際上就把它做出來的東西當成一個光碟片使用就好了。

問題

求有沒有大牛可以指導如何弄出介面來 =。=

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.