Android5.0 源码编译

2016-9-14: Ubuntu 16.04 下载和编译android 6 源码



我的源码不是repo下来的,而是从百度盘down下来的。


链接:http://pan.baidu.com/s/1qXXw6h2

密码:3qaa


我都是在root情况下操作


1、配置jdk

apt-get install openjdk-7-jdk   
在/etc/profile 文件末尾加上:

JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/  
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin  
export JAVA_HOME  
export PATH  

2、配置依赖软件

apt-get install bison g++-multilib git gperf libxml2-utils make python-networkx zlib1g-dev:i386 zip
--> 可能出现问题

E: Unable to correct problems, you have held broken packages
解决方法:

apt-get install g++-multilib
apt-get install  bison git gperf libxml2-utils make python-networkx zlib1g-dev:i386 zip

3、配置Cache

apt-get install ccache
source ~/.bashrc

4、编译源码

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

     4.1、初始化编译环境

          . build/envsetup.sh 

     4.2、选择编译目标包

        lunch

        1 = aosp_arm-eng

     4.3、编译

          make -j4

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<


编译源码过程中出现问题:

make: *** 没有规则可以创建“out/target/product/generic/obj/GYP/shared_intermediates/angle/id/commit.h”需要的目标“external/chromium_org/third_party/angle/.git/index”。 停止。
make: *** 正在等待未完成的任务....
Export includes file: external/chromium_org/GypAndroid.linux-arm.mk -- out/target/product/generic/obj/STATIC_LIBRARIES/mojo_mojo_service_provider_bindings_gyp_intermediates/export_includes

原因:

我的源码是从其他出copy过来的,而不是从服务器上repo下来的,所以缺少了一些文件

解决方法:

    修改文件:external/chromium_org/third_party/angle/src/commit_id.target.linux-arm.mk

    如下:

 24 $(gyp_shared_intermediate_dir)/angle/id/commit.h: $(gyp_shared_intermediate_dir)/angle/commit_id.py 
 25 #$(LOCAL_PATH)/third_party/angle/.git/index $(GYP_TARGET_DEPENDENCIES)

 

再次去编译源码


参考文章

Android实战技巧之四十:Android5.1.1源代码编译与烧写




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值