Android Linux核心編譯

來源:互聯網
上載者:User

Android Linux核心編譯

平台:

Wind7_64 + Ubuntu12_04_64 + VMware

 

這裡以Android5.0為例:

 

Android5.0 可以到這裡下載:
115網盤禮包碼:5lbd7crtk1wz
http://115.com/lb/5lbd7crtk1wz

 

Linux_source_goldfish 可以到這裡下載:
115網盤禮包碼:5lbd76rru5or
http://115.com/lb/5lbd76rru5or

 

Android5.0的編譯可以參考:

遇到的問題

 

需要使用openjdk7

apt-get install openjdk-7-jdkapt-get install openjdk-7-jre

編譯:

 
root@ubuntu:~/work/android/android5/android-5.0# . build/envsetup.sh including device/moto/shamu/vendorsetup.shincluding device/samsung/manta/vendorsetup.shincluding device/generic/mini-emulator-x86/vendorsetup.shincluding device/generic/mini-emulator-arm64/vendorsetup.shincluding device/generic/mini-emulator-mips/vendorsetup.shincluding device/generic/mini-emulator-x86_64/vendorsetup.shincluding device/generic/mini-emulator-armv7-a-neon/vendorsetup.shincluding device/lge/mako/vendorsetup.shincluding device/lge/hammerhead/vendorsetup.shincluding device/asus/tilapia/vendorsetup.shincluding device/asus/deb/vendorsetup.shincluding device/asus/grouper/vendorsetup.shincluding device/asus/flo/vendorsetup.shincluding device/asus/fugu/vendorsetup.shincluding sdk/bash_completion/adb.bashroot@ubuntu:~/work/android/android5/android-5.0# choosecombo Build type choices are:     1. release     2. debugWhich would you like? [1] 1Which product would you like? [full] Variant choices are:     1. user     2. userdebug     3. engWhich would you like? [eng] ============================================PLATFORM_VERSION_CODENAME=RELPLATFORM_VERSION=5.0TARGET_PRODUCT=fullTARGET_BUILD_VARIANT=engTARGET_BUILD_TYPE=releaseTARGET_BUILD_APPS=TARGET_ARCH=armTARGET_ARCH_VARIANT=armv7-aTARGET_CPU_VARIANT=genericTARGET_2ND_ARCH=TARGET_2ND_ARCH_VARIANT=TARGET_2ND_CPU_VARIANT=HOST_ARCH=x86_64HOST_OS=linuxHOST_OS_EXTRA=Linux-3.5.0-23-generic-x86_64-with-Ubuntu-12.04-preciseHOST_BUILD_TYPE=releaseBUILD_ID=LRX21MOUT_DIR=out============================================root@ubuntu:~/work/android/android5/android-5.0# make 

編譯完成後,設定工具鏈路徑,為編譯核心方便:

export PATH=$PATH:/root/work/android/android-5.0/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin

編譯核心:

下載核心後,解壓

root@ubuntu:~/work/android/android5/goldfish# git branch -a  master  remotes/origin/HEAD -> origin/master  remotes/origin/android-3.10  remotes/origin/android-3.4  remotes/origin/android-goldfish-2.6.29  remotes/origin/android-goldfish-3.10  remotes/origin/android-goldfish-3.4  remotes/origin/linux-goldfish-3.0-wip  remotes/origin/master

由於Android5.0的模擬器使用的核心是3.4(可以用模擬器內建的核心啟動一個模擬器,然後看一下核心版本 cat /proc/version ), 所以我們也是用3.4:

root@ubuntu:~/work/android/android5/goldfish# git checkout remotes/origin/android-goldfish-3.4 -b linux-3.4


然後修改Makefile

ARCH        ?= armCROSS_COMPILE    ?= arm-eabi-

配置核心

root@ubuntu:~/work/android/android5/goldfish# make goldfish_armv7_defconfig

注意:這個預設的核心並沒有配置模組載入功能,需要執行make menuconfig設定,否則無法編譯和載入核心模組

編譯核心

make zImage -j2

用我們編出的核心啟動模擬器:

root@ubuntu:~/work/android/android5/android-5.0# emulator64-arm -kernel ../goldfish/arch/arm/boot/zImage

 


 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.