1,android官方推薦安裝ubuntu12.04LTS。html
2,編譯Gingerbread (2.3.x)以上android版本(包含主流版本),都應使用64位系統環境;安裝ubuntu-12.04LTS-AMD64而不是ubuntu-12.04LTS-x86。java
3,在虛擬機上是能夠編譯android的,可是要編譯android代碼樹,至少要保證16G的RAM或者SWAP和很多於30G的磁盤空間。python
4,還須要如下工具:Python 2.6-2.7,GNU Make 3.81-3.82,JDK 6(sun-java6-jdk),Git 1.7 or newer。linux
1,下載bin文件下載oracle java 6 jdk 64-bit(即sun-java6-jdk)$ wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F" http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-x64.bin$ chmod u+x jdk-6u45-linux-x64.bin2,安裝的過程$ ./jdk-6u45-linux-x64.bin$ sudo mv jdk1.6.0_45 /opt$ sudo update-alternatives --install "/usr/bin/java" "java" "/opt/jdk1.6.0_45/bin/java" 1$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/opt/jdk1.6.0_45/bin/javac" 1$ sudo update-alternatives --install "/usr/lib/mozilla/plugins/libjavaplugin.so" "mozilla-javaplugin.so" "/opt/jdk1.6.0_45/jre/lib/amd64/libnpjp2.so" 1$ sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/opt/jdk1.6.0_45/bin/javaws"3,ubuntu可能還有其餘的jdk,下兩行就是選擇默認的JDK版本(sun-java6-jdk)$ sudo update-alternatives --config java$ sudo update-alternatives --config javac4,設置JAVA_HOME環境變量$ export _JAVA_HOME=/opt/jdk1.6.0_45/
5.1解決未發現jar的方法
$ cd /usr/bin
$ sudo ln -s -f /opt/jdk1.6.0_30/bin/jar
5.2解決未發現javadoc的方法
$ cd /usr/bin
$ sudo ln -s -f /opt/jdk1.6.0_30/bin/javadoc
de style="line-height: 14px; font-size: 18px;" >$ sudo apt-get install git gnupg flex bison gperf build-essential \ zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \ libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \ libgl1-mesa-dev g++-multilib mingw32 tofrodos \ python-markdown libxml2-utils xsltproc zlib1g-dev:i386de>
de style="line-height: 14px; font-size: 18px;" > $ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.sode>
$ cd lichee
$ ./build.sh -p sun7i_android
$ cd ../android4.2.1
$ source build/envsetup.sh
$ lunch //選擇wing_k70-eng
$ extract-bsp //拷貝內核和模塊到android中;
$ make -j16
$ pack //徹底打包 //在lichee\tools\pack路徑下生成了固件sun7i_android_wing-k70.img
第一步,編譯lichee
$ cd lichee
$ ./build.sh -p sun7i_android
第二步,編譯android
$ cd ../android4.2.1
$ source build/envsetup.sh
$ lunch //選擇wing_k70-eng
$ extract-bsp
$ make bootimage
注意:「make -j16」和「pack」不用。在執行這些命令後,內核印象文件a20_wing4.2_to_chenwenjie/android4.2.1/out/target/product/wing-k70/boot.img時間戳會發生更新。而後,就能夠使用adb推入平板電腦了。
> adb push Z:\to_chenwenjie\a20_wing4.2_to_chenwenjie\android4.2.1\out\target\product\wing-k70\boot.img /mnt/sdcard/
> adb shell sync
> adb shell dd if=/mnt/sdcard/boot.img of=/dev/block/nandc
> adb shell sync
> adb shell reboot
> adb push Z:\to_chenwenjie\a20_wing4.2_to_chenwenjie\lichee\linux-3.3\drivers\input\touchscreen\gslX680.ko /system/vendor/modules
> adb shell sync
> adb remount //解決只讀問題(可選)
> adb shell reboot
> adb shell
# cd /system/vendor/modules
# rm gslX680.ko
# reboot
#insmod *.ko //加載模塊到內核
#rmmod * //將模塊從內核中移除
#lsmod //顯示已加載的模塊
>adb shell cat /proc/kmsg > 1.txt //或者直接adb shell cat /proc/kmsg