编译Android 8.0系统 并刷入pixel

前言:

这学期的项目需要对android系统中art以及framework进行一些简单的修改。万事开头难,先从编译源码并刷入机器开始。

部分环境:

手机:Pixel
系统:Ubuntu 18.04.2 LTS
处理器:Intel® Core™ i7-7700HQ CPU @ 2.80GHz
虚拟机:VMware® Workstation 15 Pro
虚拟机内存: 8GB
虚拟机硬盘: 300GB

官方教程:

https://source.android.com/setup/build/requirements

下载:

建bin来存放repo,并配置repo的环境变量

mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

配置git的用户信息

git config --global user.name "Your Name"
git config --global user.email "you@example.com"

进行初始化

repo init -u https://android.googlesource.com/platform/manifest

特定版本的代码:

repo init -u https://android.googlesource.com/platform/manifest -b android-8.0.0_r2

ps: 直接从谷歌下载可能会遇到问题,推荐使用科大源
修改repo文件中 REPO_UPRL

REPO_URL = 'https://gerrit-googlesource.lug.ustc.edu.cn/git-repo'

并且init时候采用下面指令

repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-8.0.0_r2

最后

repo sync

即可下载源代码。

编译

由于部分硬件驱动是非开源的,因此要刷到pixel上面,首先要下载相应的固件(注意对应号系统型号)
下载地址:
https://developers.google.com/android/drivers#sailfishopr6.170623.011
之后选择对应版本,这里针对pixel选择aosp_sailfish-userdebug

解压之后放到源代码的根目录下执行这两个文件

./extract-google_devices-sailfish.sh
./extract-qcom-sailfish.sh

然后就进行编译即可,注意需要lunch的版本根据机器不同有所区别

. build/envsetup.sh
lunch aosp_sailfish-userdebug
make -j8
编译时候遇到的坑及解决方案

编译时候会遇到很多坑,这里列举几个我碰到的(依赖相关的没有放上来)
1

flex-2.5.39: loadlocale.c:130:_nl_intern_locale_data: ?? 'cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' ???
Aborted (core dumped)

解决方案

export LC_ALL=C

2

Out of memory error (version 1.3-rc6 'Douarn' (441800 22a11d4b264ae70e366aed3025ef47362d1522bb by android-jack-team@google.com)).

解决方案

export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4096m"
out/host/linux-x86/bin/jack-admin kill-server
out/host/linux-x86/bin/jack-admin start-server
刷机

官方教程:
https://source.android.com/setup/build/running.html#flashing-a-device
进去fastboot模式(如果不成功可以加sudo试试)

fastboot devices
fastboot -w flashall

至此刷机成功,接下来的工作就是对系统进行一些修改并刷入设备了

转载于:https://www.cnblogs.com/zhangxianlong/p/10672649.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值