一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Android 4.0.1 源碼下載,編譯和運(yùn)行

 android之情殤 2012-11-18

Android 4.0.1 源碼下載,編譯和運(yùn)行

[1] Android ICS 下載
—————————————————————-

http://source./source/downloading.html 上有最新的ICS 源代碼同步的地址。如果環(huán)境已經(jīng)設(shè)置好了的話,同步最新的代碼非常的簡單:
$ mkdir WORKING_DIRECTORY
$ cd WORKING_DIRECTORY

$ repo init -u https://android./platform/manifest -b android-4.0.1_r1
$ repo sync

轉(zhuǎn)注:

主干:$ repo init -u https://android./platform/manifest.git
4.03:$ repo init -u https://android./platform/manifest.git -b android-4.0.3_r1

下載完成后主要包含以下目錄:

abi  bionic  bootable  build  cts  dalvik  development  device  docs  external  frameworks  hardware  libcore  Makefile  ndk  out  packages  prebuilt  sdk  system

Android4.01配套內(nèi)核kernel3.0下載
$ git clone http://android.git./kernel/common.git
$ git branch -a
$ git checkout remotes/origin/android-3.0

—————————————————————-
[2] Android ICS 的編譯
—————————————————————-
source ./build/envsetup.sh
lunch sdk-eng
make

編譯完成后工作目錄($TOP)里增加了一個(gè)log文件 v8.log

轉(zhuǎn)注:

(1) 編譯過程中,可能會(huì)由于stdio2.h導(dǎo)致編譯錯(cuò)誤。正確的stdio2.h是./prebuilt/linux-x86/toolchain /i686-linux-glibc2.7-4.4.3/sysroot/usr/bits/stdio2.h文件,請重新設(shè)置PATH環(huán)境變量,將. /prebuilt/linux-x86/toolchain/i686-linux-glibc2.7-4.4.3/sysroot/usr放在 PATH的最前。

(2) 編譯時(shí)可能會(huì)提示需要Java 1.6 SE,實(shí)際上編譯時(shí)只需要有Java 1.6 JDK就成

(3) 帶參數(shù)make時(shí),toolchain說明最好使用絕對路徑,如:make -j2 ARCH=arm CROSS_COMPILE=/home/hyla/ics/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
—————————————————————-
[3] Android 4.0.1 模擬器內(nèi)核最新下載地址及編譯步驟
—————————————————————-
url: http://www./Linux/2011-11/47809.htm

由于Android kernel的部分封閉策略,kernel org已經(jīng)將android kernel踢出主線。原有的同步地址已經(jīng)被重定向,再加上android kernel本身結(jié)構(gòu)的調(diào)整,很多原來的同步方法已經(jīng)不能使用。下面是最新的方法,適用于編譯android 4.0.1 模擬器的內(nèi)核(qemu kernel, goldfish branch)。

原有的方法大多使用以下地址同步
$ git clone git://Android.git./kernel/common.git
$ cd common
$ git branch -a
$git checkout remotes/origin/archive/Android-gldfish-2.6.29

但是我們可以在瀏覽器里輸入
Android.git./kernel/common.git
它實(shí)際上已經(jīng)被重定向到
Android./kernel/common.git

但是這個(gè)repo 里已經(jīng)不包含 goldfish的分支了。如果同步下來后我們用 git branch -a 將看到只有最新的 3.0 和2.6.39的分支:
$git branch -a
* (no branch)
master
remotes/origin/HEAD -> origin/master
remotes/origin/android-2.6.39
remotes/origin/android-3.0
remotes/origin/master

其實(shí) goldfish分支已經(jīng)被獨(dú)立為一個(gè)單獨(dú)的repo:http://android./kernel/goldfish.git
以下是最新的正確的 同步步驟:

$git clone http://android./kernel/goldfish.git
$cd goldfish
$git branch -a
* (no branch)
master
remotes/origin/HEAD -> origin/master
remotes/origin/android-goldfish-2.6.29
remotes/origin/master
$git checkout remotes/origin/android-goldfish-2.6.29

編譯步驟基本沒有變,但需要使用新的config:
$ make ARCH=arm goldfish_armv7_defconfig
$ make ARCH-arm CROSS_COMPILE=arm-eabi-


OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready

然后就可以用著新的kernel img 來啟動(dòng)模擬器了:

 

—————————————————————-
[4] Android ICS 模擬器的啟動(dòng)
—————————————————————-
命令:列出AVD平臺
$ cd out/host/linux-x86/sdk/android-sdk_eng.xxx_linux-x86/tools
$ android list targets
Available Android targets:
———-
id: 1 or “Android-14″
Name: Android 4.0
Type: Platform
API level: 14
Revision: 2
Skins: QVGA, WSVGA, HVGA, WVGA854, WXGA720, WQVGA432, WVGA800 (default), WQVGA400, WXGA800
ABIs : armeabi-v7a

命令:自定義AVD
$ android create avd -t 1 -n ics
Auto-selecting single ABI armeabi-v7a
Android 4.0 is a basic Android platform.
Do you wish to create a custom hardware profile [no]
Created AVD ‘ics’ based on Android 4.0, ARM (armeabi-v7a) processor,
with the following hardware config:
hw.lcd.density=240
vm.heapSize=24
hw.ramSize=512

命令:啟動(dòng)模擬器,加載自定義的AVD
$ emulator -avd ics

命令:使用自己編譯的內(nèi)核啟動(dòng)模擬器

$emulator -kernel …../kernel/goldfish/arch/arm/boot/zImage &

啟動(dòng)模擬器,到 Setting => About 去看,kernel現(xiàn)在的確是我們自己編譯的版本了。

命令:使用自己編譯的內(nèi)核及images啟動(dòng)模擬器

export DROIDROOT=~/android-sdk-v14-x86
export AVDROOT=~/android-sdk-v14-x86/tools

cd `pwd`/out/target/product/generic
$AVDROOT/emulator -kernel http://www.cnblogs.com/http://www.cnblogs.com/kernel/arch/arm/boot/zImage -show-kernel -partition-size 256 -memory 256 -skindir $DROIDROOT/platforms/android-14/skins -skin WVGA800 -shell -sysdir ./ -data userdata.img -ramdisk ramdisk.img -system system.img -sdcard /~/.android/avd/wvga800v14/sdcard.img

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    色婷婷激情五月天丁香| 美女激情免费在线观看| 久久天堂夜夜一本婷婷| 欧美一区日韩二区亚洲三区| 人体偷拍一区二区三区| 成年人黄片大全在线观看| 美女被啪的视频在线观看| 欧美有码黄片免费在线视频| 狠狠干狠狠操亚洲综合| 91人妻人澡人人爽人人精品| 黑丝国产精品一区二区| 国产毛片不卡视频在线| 亚洲国产精品久久精品成人| 国产精品免费视频久久| 日本理论片午夜在线观看| 欧美午夜色视频国产精品 | 久热在线视频这里只有精品| 色婷婷国产熟妇人妻露脸| 国产精品久久久久久久久久久痴汉| 国产亚洲欧美自拍中文自拍| 风间中文字幕亚洲一区| 国产丝袜极品黑色高跟鞋| 日本午夜免费福利视频| 黄片免费播放一区二区| 日本女优一色一伦一区二区三区| 中文字幕一区二区免费| 在线观看中文字幕91| 久久亚洲精品成人国产| 91欧美亚洲精品在线观看| 欧美成人免费一级特黄| 日韩成人动画在线观看| 亚洲欧美国产网爆精品| 午夜精品国产精品久久久| 亚洲熟女一区二区三四区| 国产日韩中文视频一区| 国产精品一区二区传媒蜜臀| 亚洲一级二级三级精品| 国产成人一区二区三区久久| 一区二区三区在线不卡免费| 亚洲永久一区二区三区在线| 91久久精品国产一区蜜臀|