Ubuntu14.04+安卓系统4.3+JDK6编译源码
本博客主要参照:
https://www.jianshu.com/p/ecb9c132030f
https://blog.csdn.net/gobitan/article/details/24367439/
参照是参照,但是问题还是有的,下面就介绍我环境搭建的步骤:
1、去oracle官网下载JDK6版本jdk-6u45-linux-x64.bin
2、安装jdk6
sudo chmod u+x /usr/lib/jvm/java/jdk1..5_45.bin /usr/lib/jvm/java/jdk1..5_45.bin
3、配置环境变量
vim ~/.bashrc 在文件末尾添加(#配置JDK#):
JAVA_HOME=/usr/lib/jvm/java/jdk1..0_45
PATH=${JAVA_HOME}/bin:$PATH
CLASSPATH=${JAVA_HOME}/lib:$CLASSPATH 然后, source~/.bashrc #使环境变量生效 测试是否生效, java -version
4、编译所需的依赖包
sudo apt-get install gcc
sudo apt-get install g++-multilib
sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 libreadline6-dev:i386 g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 dpkg-dev
sudo apt-get install lzop
sudo apt-get install keychain
5、执行官方所需的软件包
sudo apt-get install bison g++-multilib git gperf libxml2-utils make
sudo apt-get install python-networkx zlib1g-dev:i386 zip
6、安装ccache,加速编译
安装:
sudo apt-get install ccache 打开文件:
vim ~/.bashrc
在末尾加上,
export USE_CCACHE=1
source ~/.bashrc #使环境变量生效
7、安装
本人在编译的过程发生了一个错误:
make: *** [out/target/product/mx3/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/html/DocTypeStrings.cpp] Error 解决方法就是安装:
sudo apt-get install libswitch-perl
#########至此,环境以准备好了。##########
下面介绍源码编译步骤:
1、创建文件
mkdir aosp
cd aosp
2、将源码解压到aosp文件中
3、设置cache
#aosp为安卓源码的根目录
prebuilts/misc/linux-x86/ccache/ccache -M 50G
4、环境初始化
. build/envsetup.sh
5、选择版本,本人使用的是aosp_arm_eng
lunch aosp_arm-eng
6、编译
make
7、运行模拟器
emulator &
本人是按照步骤一次编译成功。在编译之前看了很多博客,很多人都没有成功,主要是源码的下载,因此,最好最便捷的方法就是:先下载源码。
安卓4.3源码:https://pan.baidu.com/s/18LC94hgY9lebajcto9EAPw
安卓4.4源码:https://pan.baidu.com/s/1gf1WAa1QvqURdYGBze7AKg
安卓6.0源码:https://pan.baidu.com/s/11JyxDi-7sd-umkH2oT_BDg
Ubuntu14.04+安卓系统4.3+JDK6编译源码的更多相关文章
- ubuntu14.04+安卓7.1(全志源码)+openjdk-8编译
题记:编译花了将近4小时,所以编译源码是很费时的哦,可以在编译的时候可以学习其他的知识 编译环境准备 软件:WorkStation10 系统:ubuntu14.04 内存:8G 处理器:4个 磁盘大小 ...
- Legacy安装win7和Ubuntu14.04双系统
Legacy安装win7和Ubuntu14.04双系统 安装环境 Legacy启动模式(传统引导) 笔记本已安装win7 硬盘启动顺序为: U盘 硬盘 光驱 安装方法 制作U盘启动盘 在Ubuntu官 ...
- Windows8.1和Ubuntu14.04双系统卸载Ubuntu參考教程[图]
我之前编写并公布了<Windows8.1安装Ubuntu14.04双系统參考教程及双硬盘注意事项>这篇教程,而本文提供的卸载Ubuntu方法适用于这篇教程,其它方法安装的Ubuntu可适当 ...
- 虚拟机安装ubuntu14.04.5系统
参考教程 在vitualbox安装 ubuntu14.04.2 LTS教程 http://jingyan.baidu.com/article/46650658228345f549e5f8cc.html ...
- 安装Win10+Ubuntu14.04双系统(uefi启动版)
说明 本教程基于个人电脑(型号:神舟K550d-i7 D1)成功安装测试发布,不同硬件环境可能有细微差异,为预防安装过程中出现意想不到的报错,重要数据请提前备份 硬件环境 cpu:Intel i7-4 ...
- Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程
Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程 在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...
- ubuntu配置android开发环境和编译源码遇到的一些问题
---------------------------------------------环境变量设置--------------------------------------------- 1.设 ...
- 【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)
作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csd ...
- CentOS 编译源码安装MySQL-5.6.16
mysql5.6.16的安装和之前的5.5.5.1有些不同,编译的时候不再使用./configure来进行了,使用了cmake命令来进行编译项目. 1.准备编译环境 yum -y installmak ...
随机推荐
- vue-element-admin 之改变登录界面input的光标颜色
前话:用框架原有的login更改而不重写的话,恰好当你input背景设置成白色的时候,光标会找不到=>原因:原框架的光标颜色是#fff 操作更改光标颜色: 找到src/views/login/i ...
- 程序面试题——C实现
平台:win10 x64 +VC6.0 2019/5/22 1.合并三个有序的链表 链表节点定义struct node{ int val; struct node* next;}; str ...
- 七:mvc使用CodeFirst(代码优先)创建数据库
1. 理解EF CodeFirst模式特点 2. 使用CodeFirst模式生成数据库 1. CodeFirst模式(代码优先) Code First是Entity Framework提供的一种新的编 ...
- xgboost&lightgbm调参指南
本文重点阐述了xgboost和lightgbm的主要参数和调参技巧,其理论部分可见集成学习,以下内容主要来自xgboost和LightGBM的官方文档. xgboost Xgboost参数主要分为三大 ...
- layui 单选框、多选框radio 元素判断是必填项 lay-verify='required'
简单验证复选框,单选框必填 例子代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8&quo ...
- 在laravel5.8中集成swoole组件----用协程实现的服务端和客户端(nginx配置篇章)
laravel项目中的配置 原文出处:https://laravelacademy.org/post/19700.html,感谢原文作者让laravel这款可爱的php框架,进入了高并发的殿堂 如果 ...
- awk的妙用
终端形式 有人说awk的优势在于可以个性化输出命令,这么说来太抽象了,假如我们查看占用6379端口的进程信息. lsof -i: 输出结果: COMMAND PID USER FD TYPE DEVI ...
- 【git】git中使用https和ssh协议的区别以及它们的用法
git可以使用四种主要的协议来传输资料: 本地协议(Local),HTTP 协议,SSH(Secure Shell)协议及 git 协议.其中,本地协议由于目前大都是进行远程开发和共享代码所以一般不常 ...
- 自己总结:汇编CALL和RET指令
ret指令,相当于 pop IP:修改IP的内容,从而实现近转移 retf指令,相当于 pop IP pop CS:修改CS和IP的内容,从而实现远转移 -------------- CPU执行cal ...
- Poj 2887 Big String(块状数组)
Big String Time Limit: 1000MS Memory Limit: 131072K Description You are given a string and supposed ...