獲取Android4.0源碼,也可以參考Android官網的下載步驟:官網下載參考
第一步,首先建立repo環境,把此目錄添加到環境變量中。
mkdir ~/bin
PATH=~/bin:$PATH
第二步,下載repo工具。
sudo apt-get install git-core curl
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
第三步,建立源碼目錄,注意源碼目錄所在的磁盤要保留有20G的空間。
mkdir ~/MyAndroid
cd ~/MyAndroid
repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
1.在android 目錄中執行 repo init 去更新manifest(列表)。這個主要是爲你下一步下載代碼做準備的。
repo init -u https://android.googlesource.com/platform/manifest -b gingerbread
... A new repo command ( 1.18) is available.
... You should upgrade soon:
cp /home/pn/android/.repo/repo/repo /home/pn/bin/repo
error: The requested URL returned error: 406 while accessing https://android.googlesource.com/platform/manifest/info/refs
fatal: HTTP request failed
Your Name [lenovo]: pn
Your Email [[email protected]]: [email protected]
Your identity is: panlin <[email protected]>
is this correct [y/N]? y
Testing colorized output (for 'repo diff', 'repo status'):
black red green yellow blue magenta cyan white
bold dim ul reverse
Enable color display in this user account (y/N)? y
repo initialized in /home/pn/android
第四步,開始下載源碼。
repo sync
下載完了之後源碼一共4.2G,我用了大概3個多小時。
編譯Android4.0源碼,也可以參考Android官網的編譯步驟:官網編譯參考
第一步,安裝JDK。4.0源碼的編譯需要JDK1.6。先下載jdk-6u23-linux-i586.bin,然後安裝。下載地址:分卷1 分卷2
cd /usr
sudo mkdir java
cd java
sudo cp jdk-6u23-linux-i586.bin所在目錄 ./
sudo chmod 755 jdk-6u23-linux-i586.bin
sudo sh jdk-6u23-linux-i586.bin
第二步,設置JDK環境變量,把以下命令添加到主文件夾目錄下的.bashrc文件中,然後執行source命令使其生效。
export JAVA_HOME=/usr/java/jdk1.6.0_23
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/bin/tools.jar:$JRE_HOME/bin
export ANDROID_JAVA_HOME=$JAVA_HOME
相應的命令:
sudo gedit ~/.bashrc
source ~/.bashrc
第三步,安裝依賴的包。
sudo apt-get install git-core bison zlib1g-dev flex libx11-dev gperf
sudo aptitude install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
第四步,開始準備編譯。
source build/envsetup.sh
lunch full-eng
make
編譯完之後,編譯產生的out目錄一共有11G多,用時大概4個多小時。編譯完成後源碼目錄會多一個v8.log文件。
下面啓動模擬器來看看4.0的界面。
在源碼目錄新建start.sh文件,用來啓動模擬器的,往此文件中添加如下內容。4.0源碼編譯完後sdk\emulator文件夾下沒有skin目錄,我們可以直接把2.3的拷貝過來,但是這裏我沒有弄,就直接是默認皮膚了。
- ANDROID_HOME=.
- ANDROID_EMULATOR=$ANDROID_HOME/out/host/linux-x86/bin/emulator
- ANDROID_SYSDIR=$ANDROID_HOME/out/target/product/generic
- ANDROID_DATAIMG=$ANDROID_HOME/out/target/product/generic/userdata.img
- ANDROID_SKINDIR=$ANDROID_HOME/sdk/emulator/skins
- ANDROID_KERNEL=$ANDROID_HOME/prebuilt/android-arm/kernel/kernel-qemu-armv7
- ANDROID_SKIN=WVGA800
- #ANDROID_SKIN=HVGA
- $ANDROID_EMULATOR \
- -audio oss \
- -sysdir $ANDROID_SYSDIR \
- -partition-size 128 \
- -data $ANDROID_DATAIMG \
- -kernel $ANDROID_KERNEL \
- -skindir $ANDROID_SKINDIR \
- -skin $ANDROID_SKIN \
- -sdcard $ANDROID_HOME/sdcard.img \
- -show-kernel \
- -shell \
- -system $ANDROID_SYSDIR/system.img \
- -dpi-device 240
運行start.sh文件啓動模擬器,以下是運行的截圖。
轉載地址:http://blog.csdn.net/zuolongsnail/article/details/7016839