这一章的话之前也是弄过,不过失败了,趁着这次又重新来了一次,在同学帮助下找到了国内的中科大源下/aosp,但是源码下载一直失败到了大概62%,不是域名解析错误就是链接超时,无奈,弄不下去了。墙太高,网速太慢,硬盘太小,没钱@_@。

  一、获取 repo

http://www.cnblogs.com/bluestorm/p/4419135.html(先看看这个网址)

首先获取 repo:
curl "http://php.webtutor.pl/en/wp-content/uploads/2011/09/repo" > ~/bin/repo
给 “repo” 增加相应权限:chmod a+x ~/bin/repo
添加环境变量:PATH=~/bin:$PATH
这样就获取了第三方的 repo。   

  安卓源码下载:

  1.创建源码文件夹

  2.同步源码

 外国源

  repo init -u git://codeaurora.org/platform/manifest.git -b gingerbread
科技大学的源
  repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-6.0.0_r1
  开始同步:

   repo sync -j16
  

可能会遇到下载中断,编写一个sheel脚本

中断下载
#!/bin/bash
echo "======start repo sync======"
repo sync -j14
while [ $? == 1 ]; do
echo "======sync failed, re-sync again======"
sleep 3
repo sync -j14
done

 

 

  下载好安卓源码
1.进入源码路径下
2.source build/envsetup.sh#导入需要的一些命令
3.lunch#悬着需要编译的硬件平台
4.make -jx#编译开始,-jx多线程,会生成out文件夹        

下载好goldfish源码
1.修改makefile
?= (SUBARCH)
 # CROSS_COMPILE?=
修改为:
ARCH ?= arm
CROSS_COMPILE     ?= arm-eabi-
注意:ARTH ?=arm,的arm后边不要有空格。
2.     $ source build/envsetup.sh  //缺少这条指令,可能会导致无法编译通过  
    $ lunch full-eng            //缺少这条指令,可能会导致无法启动模块器,系统报无法找到AVD,并要求你创建
3.    $ make goldfish_armv7_defconfig  
    $ make
参考博文:
http://blog.csdn.net/flydream0/article/details/7070392

posted on 2016-04-11 14:43  2101648015piO  阅读(147)  评论(0编辑  收藏  举报