一 准备工作
1 安装java sdk 6
(1)从jdk官方网站
http://www.Oracle.com/technetwork/java/javase/downloads/jdk-6u29-download-513648.html下载 jdk-6u29-linux-i586.bin文件。(2)执行jdk安装文件$ chmod a+x jdk-6u29-linux-i586.bin
$ jdk-6u29-linux-i586.bin(3)配置jdk环境变量$ sudo vim /etc/profile
#JAVA EVIRENMENT
export JAVA_HOME=/usr/lib/java/jdk1.6.0_29
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH 保存后退出编辑,并重启系统。
2 安装依赖包
$ sudo apt-get install git-core gnupg flex bison gperf build-essential
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs
x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev
libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown
libxml2-utils
3 用repo工具下载源码
(1)初始化repo $ cd ~
$ mkdir bin
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo >~/bin/repo
$ chmod a+x ~/bin/repo
$ export PATH=$PATH:~/bin(导出环境变量)(2)下载Android最新源码 $ mkdir android
$ cd android
$repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
...(输入用户名和邮箱名)
$ repo sync -j5
...(此处用5个线程开始下载源码,下载过程及其漫长,需要耐心等待)
二 编译源码
1 开始编译
$ source build/envsetup.sh
including device/samsung/maguro/vendorsetup.sh
including device/samsung/tuna/vendorsetup.sh
including device/ti/panda/vendorsetup.sh
including sdk/bash_completion/adb.bash
$ make -j4(此处用4个线程编译)
编译完成后,会看到类似的输出: Target ram disk: out/target/product/generic/ramdisk.img
Target userdata fs image: out/target/product/generic/userdata.img
Installed file list: out/target/product/generic/installed-files.txt
2 编译遇到的问题
编译错误: <命令行>:0:0: 错误: “_FORTIFY_SOURCE”重定义 [-Werror]
<built-in>:0:0: 附注: 这是先前定义的位置
cc1plus:所有的警告都被当作是错误
make: *** [out/host/linux-x86/obj/EXECUTABLES/obbtool_intermediates/Main.o] 错误 1
原因:因机器上的gcc版本过高,需替换成4.4.6重新进行编译。 解决方法:1)安装4.4版本的gcc 和g++ $ sudo apt-get install gcc-4.4
$ sudo apt-get install g++-4.42)设置gcc版本,使gcc链接到gcc-4.4$ ls -l /usr/bin/gcc*
lrwxrwxrwx 1 root root7 2011-11-01 23:56 /usr/bin/gcc -> gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 /usr/bin/gcc-4.4
-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 /usr/bin/gcc-4.6
$ cd /usr/bin
$ sudo mv gcc gcc.bak
$ sudo ln -s gcc-4.4 gcc3)设置g++版本,使g++链接到g++-4.4 $ sudo mv g++ g++.bak
$ sudo ln -s g++-4.4 g++4)设置完毕后,重新进行编译即可
3 从模拟器启动编译后的镜像文件
1)设置环境变量:export PATH=~/android/out/host/linux-x86/bin:$PATH
export ANDROID_PRODUCT_OUT=~/android/out/target/product/generic其中linux-x86/bin存放模拟器emulator工具,product/generic存在编译后的镜像文件。 2)启动模拟器$ emulator
emulator: WARNING: system partition size adjusted to match image file (162 MB > 66 MB)启动后的截图:
如何在Ubuntu 11.10 下安装KScopeWIN7下硬盘安装Ubuntu 11.10 实现双系统相关资讯 Ubuntu 11.10 Android 4.0
- Android 4.0 上的 Chrome 浏览器将 (03/08/2015 18:51:54)
- Adroid 4.0 HttpURLConnection抛异 (03/18/2013 14:06:22)
- Android 4.0 USB挂载内核驱动层流 (02/26/2013 09:45:23)
| - Android滑动解锁的震动效果 (05/06/2013 09:48:04)
- 取消对Android 4.0以下的支持是开 (03/12/2013 09:12:22)
- Android 4.0 打开网络设置界面 (02/18/2013 12:25:14)
|
本文评论 查看全部评论 (0)