博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
过程简记:AOSP android emulator build 源码编译 清华源 科大源
阅读量:2066 次
发布时间:2019-04-29

本文共 2438 字,大约阅读时间需要 8 分钟。

检查安装git工具

sudo apt-get install git

git config –global user.email “eloelo@gmail.com”

git config –global user.name “eloelo”

可以执行命令检查是否已经设置:

git config --global --get user.name

git config --global --get user.email

AOSP 归根结底使用git进行管理的。

下载 repo 工具:

   mkdir ~/bin      #
   PATH=~/bin:$PATH
   curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo     

                                           (#小翻一下,下载最新的版本,repo文件很小,KB级的)

   chmod a+x ~/bin/repo

vim ~/bin/repo

修改 REPO_URL的值为:

REPO_URL = 'https://gerrit-google.tuna.tsinghua.edu.cn/git-repo'

下载初始化包:aosp-latest.tar

(#androidQ 源代码已经60GB左右了),除非网络环境超好,所以直接运行repo sync 有点不靠谱。

下载 https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar,下载完成后记得根据 checksum.txt 的内容校验一下。

mkdir source

cd source

wget -c https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar # 下载初始化包

tar xf aosp-latest.tar
cd aosp   # 这个文件夹是解压得到的 aosp 工程目录
# 这时 ls 的话什么也看不到,因为只有一个隐藏的 .repo 目录,可以执行 ls -all
repo sync # 正常同步一遍即可得到完整目录
# 或 repo sync -l 仅checkout代码,aosp-latest.tar都是当月初的源代码打包成的。比如现在是20191113,那么这是11月初的源码打包而成的。

--------------------------------

搭建编译环境

两组命令,有重合,执行第一组在慢慢挑选缺少的吧。

  1. sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g++-multilib

  2. sudo apt-get install -y git flex bison gperf build-essential libncurses5-dev:i386

  3. sudo apt-get install tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386

  4. sudo apt-get install dpkg-dev libsdl1.2-dev libesd0-dev

  5. sudo apt-get install git-core gnupg flex bison gperf build-essential

  6. sudo apt-get install zip curl zlib1g-dev gcc-multilib g++-multilib

  7. sudo apt-get install libc6-dev-i386

  8. sudo apt-get install lib32ncurses5-dev x11proto-core-dev libx11-dev

  9. sudo apt-get install libgl1-mesa-dev libxml2-utils xsltproc unzip m4

  10. sudo apt-get install lib32z-dev ccache

  11.  

---------------------------------------------------------

# apt-get install gcc-multilib g++-multilib libc6-i386 git gnupg flex bison

# apt-get install gperf gawk build-essential zip curl libncurses5-dev

# apt-get install zlib1g-dev lib32z1-dev lib32tinfo-dev lib32ncurses5-dev

# apt-get install xsltproc libxml2-utils openjdk-8-jdk u-boot-tools libssl-dev

# apt-get install clang python-clang-3.8 libusb-1.0-0-dev libelf-dev

# apt-get install python-crypto

---------------------------------------------------------

编译:

初始化编译环境:

source build/envsetup.sh

选择编译目标:

lunch aosp_arm64-eng

实施编译:大概5到10小时的样子。

make -j8

运行模拟器

source build/envsetup.sh

lunch(选择刚才你设置的目标版本,比如这里了我选择的是2)

emulator

原理解释部分参考下文,建议代码下载部分按照本文保守的做法。

 

 

 

 

 

 

 

转载地址:http://frymf.baihongyu.com/

你可能感兴趣的文章
linux放音乐cd
查看>>
GridView+存储过程实现'真分页'
查看>>
flask_migrate
查看>>
解决activemq多消费者并发处理
查看>>
UDP连接和TCP连接的异同
查看>>
hibernate 时间段查询
查看>>
java操作cookie 实现两周内自动登录
查看>>
Tomcat 7优化前及优化后的性能对比
查看>>
Java Guava中的函数式编程讲解
查看>>
Eclipse Memory Analyzer 使用技巧
查看>>
tomcat连接超时
查看>>
谈谈编程思想
查看>>
iOS MapKit导航及地理转码辅助类
查看>>
检测iOS的网络可用性并打开网络设置
查看>>
简单封装FMDB操作sqlite的模板
查看>>
iOS开发中Instruments的用法
查看>>
iOS常用宏定义
查看>>
被废弃的dispatch_get_current_queue
查看>>
什么是ActiveRecord
查看>>
有道词典for mac在Mac OS X 10.9不能取词
查看>>