以前對(duì)于cm的源碼編譯都是基于固定機(jī)型的,有的時(shí)候需要使用模擬器,這邊就記錄一下使用cm的源碼來(lái)如何編譯android 模擬器,不過(guò)在做這件事情前你最好評(píng)估一下自己的機(jī)器配置。這里給出的推薦的配置是,i5以上的cpu,硬盤要固態(tài)硬盤,否則模擬器的啟動(dòng)和加載的速度幾乎不可以忍受。
創(chuàng)新互聯(lián)建站主要從事網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)清河,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):028-86922220
android源碼編譯完成以后生成的目錄都是在源碼目錄下的out文件夾下
out/target 表示生成的是目標(biāo)機(jī)器一般是手機(jī)上的各種程序,比如rom等
out/host 表示生成的是對(duì)于宿主機(jī)器上的各種工具,比如adb aapt dexdump等這些工具以及一些庫(kù)文件
我們這里主要關(guān)心 out/target 下面生成的文件,在cm源碼中經(jīng)過(guò)不同的配置對(duì)于不同的機(jī)型 target下有相應(yīng)的目錄,比如 前面提到的maguro,crespo等,這里對(duì)于模擬器對(duì)應(yīng)的目錄是 generic 這個(gè)目錄。
而對(duì)于android模擬器需要啟動(dòng)的最基本的幾個(gè)文件如下:
1 kernel文件 內(nèi)核文件,包括bootloader,開機(jī)動(dòng)畫等,android模擬器使用的goldfish內(nèi)核,需要到githup下載基于cm 11.0的goldfish linux內(nèi)核。
2 system.img 掛載 system目錄的鏡像
3 ramdisk.img 掛載磁盤的鏡像
4 userdata.img 掛載用戶數(shù)據(jù)的鏡像
有了前面的介紹以后,我們開始進(jìn)行基于cm 11.0源碼的模擬器編譯。
一 前置條件
1 下載一套完整的 cm 11.0源碼,下載地址和過(guò)程見前面的博文
2 下載配套的goldfish 內(nèi)核代碼
這里下載的地址是
https://github.com/CyanogenMod/android_kernel_goldfish/tree/cm-11.0
下載完成以后,將代碼解壓縮在 kernel/goldfish 即可
二 編譯
進(jìn)入源碼目錄
1 . build/envsetup.sh
2 lunch
找到 cm_goldfish-eng
Which would you like? [aosp_arm-eng]
填入 cm_goldfish-eng 前面的數(shù)字,完成配置
3 make -j4
經(jīng)過(guò)漫長(zhǎng)的編譯,在 out/target/product/generic 目錄下生成了各種img文件,如下圖
3 運(yùn)行模擬器
emulator -kernel /DiskCM11/cm-11/out/target/product/generic/kernel -data /DiskCM11/cm-11/out/target/product/generic/userdata.img -system /DiskCM11/cm-11/out/target/product/generic/system.img -ramdisk /DiskCM11/cm-11/out/target/product/generic/ramdisk.img
這個(gè)命令就可以將模擬器給運(yùn)行起來(lái)了,但是如果硬盤和電腦不給力的話,模擬器的速度實(shí)在不敢恭維。
當(dāng)前文章:基于cm-11源碼編譯模擬器
分享路徑:http://bm7419.com/article6/goepog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、網(wǎng)站導(dǎo)航、品牌網(wǎng)站設(shè)計(jì)、動(dòng)態(tài)網(wǎng)站、外貿(mào)建站、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)