Ubuntu 16 下载、编译Nexus 6 Android6.0源码记录

原创 2016年06月02日 09:26:38

    前一阵将Ubuntu从14升级到了16,首先做的就是把导航栏从左侧移到了下面,呵呵,Windows用习惯了。

    这里就讲一下下载、编译nexus 6的Android6.0源码过程遇到的问题。

    其实官网已经讲的很详细了,英文好的建议到安卓源码官网 开始按左侧栏目从上往下,依次预览整体流程、建立编译环境、下载源码,编译源码blabla,按步骤一步步操作即可。英文不好的建议去搜索引擎搜别人分享的编译经验吧。我这里主要分享下完全按照官网的下载、编译顺序操作时仍然遇到的,但是官网没提示解决方案的问题。

    编译环境:Ubuntu 16(64位),Open jdk8。

问题一:编译报错 提示Java版本错误   解决方法:

Ubuntu16默认使用的JDK是Open jdk8,而编译Nexus6 的6.0源码需要Open jdk7,这时通过apt-get下载不到Open jdk7!因为Ubuntu 16已经将它从源码库里移除了,解决方法是手动添加仓库再下载安装:

sudo add-apt-repository ppa:openjdk-r/ppa  
sudo apt-get update   
sudo apt-get install openjdk-7-jdk

  

问题二:编译报错recipe for target 'out/host/linux-x86/obj/lib/libart.so' failed 解决方法:

clang编译器导致的问题,修改方法是在art/build/Android.common_build.mk ,中将host 默认编辑器使用clang关掉,找到WITHOUT_HOST_CLANG,关闭clang即可。

# Host

ART_HOST_CLANG := false

ifneq ($(WITHOUT_HOST_CLANG),true)

# By default, host builds use clang for better warnings.

ART_HOST_CLANG := false

endif


问题三:编译报错 ERROR:Cannot launch Jack Server   解决方法:

Android M引入了Jack (Java Android Compiler Kit),在编译时会启动jack server,优化编译速度等。
如果遇到jack编译错误,可以把$HOME/.jack中的配置文件中的SERVER=true设成false,不用jack,jack现在还不稳定。

问题四:这个问题之前只是编译模拟器所以没发现,最近把自己的nexus6备份好,准备刷入系统时才发现,就是lunch时明明选择的21(aosp_shamu-userdebug),结果一到make就变成了默认的1(aosp_arm-eng),结果导致编译的模块不能用,甚至连boot.img都没有,暂时解决方法是在make的时候在附加参数里设置TARGET_PRODUCT,  TARGET_ARCH,  TARGET_BUILD_TYPE这些,后期研究出更好的解决方法再贴出来。

问题四更新:其实这个问题应该不算个问题,因为产生这个问题是在普通用户下通过sudo make -j8来执行make命令的,后来编译的时候我将用户切换为root用户执行编译过程,上述问题就不存在了,看官网的执行过程,应该也是以root用户执行的,因为整个过程并没有sudo的存在。




   



   

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

ERROR: Cannot launch Jack server

make: Circular out/target/common/obj/APPS/mediatek-res_intermediates/package-export.apk <- out/targe...

Android的Jack编译器试用

最近在8核(Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz)、64GB内存服务器下编译的Android 6.0时,发现在仅开了四个编译任务(make -j 4)的情况...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

Nexus 6 系统编译

我的nexus 6是美版的也就是 xt1103 按照http://source.android.com/source/initializing.html的流程,初始化环境,下载代码,编译。 $ ...

[Android编译(二)] 从谷歌官网下载android 6.0源码、编译并刷入nexus 6p手机

1 前言经过一周的奋战,终于从谷歌官网上下载最新的android 6.0.1_r62源码,编译成功,并成功的刷入nexus6p,接着root完毕,现写下这篇博客记录一下实践过程。2 简介自己下载and...

Android系统源码下载与编译、刷机--Nexus6实测

前言 此博文记录一下Android从系统源码下载到刷机的全过程。 (https://source.android.com/source/build-numbers.html 页面中列表信息找到自己...

Google Nexus5关于Android 6.0源码的同步,编译和烧写

关于Ubuntu下Android开发的环境搭建这里就不在详述啦,下面所提到的主要是一些关键点, repo工具的下载和使用 mkdir ~/bin PATH=~/bin:$PATH curl h...

Android 源码编译详解【二】:VMware12/Ubuntu16 下载、安装图解

软件下载与安装 1、       软件下载 1.1、VMwareWorkstation v12.0下载 VMware Workstation是一款运行在Windows上的虚拟PC软件,它提供专业技术人...

Ubuntu14.04下载编译Android6.0源码

Git配置 进行过此配置的直接跳过。 git config --global user.name "Your Name" git config --global user.email "you...
  • tp7309
  • tp7309
  • 2017-04-17 08:52
  • 1244

Ubuntu16.04下载编译Android6.0源码以及我所踩的坑

首先感谢 ”梧桐那时雨”的博客:http://blog.csdn.net/fuchaosz/article/details/51487585。 说说我凄惨的经历吧:先是看老罗的博客,在虚拟机里面跑了个...

Ubuntu 16.04 下载和编译android 6 源码

1、下载源码 前期准备: 安装Ubuntu, 安装 git (我的是系统自带装好) 可以输入 git --version 如果输出版本等信息则已经安装。没有安装的网上很多安装资料。并且设置git 的g...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)