前言:本文是自己制作android卡刷包的实践过程记载,参考了网上成熟的步骤,但还是遇到了一些问题,其中部分并没详细的介绍,所以在此重新整理一遍。

准备工作:

由于编译android对计算机性能要求较高,根据网上建议,放弃了虚拟机。用个人笔记本安装了双操作系统。
OS:Ubuntu16.04系统;
内存:8G内存;
硬盘:150G硬盘(源码加编译需要120G左右,需要制作ota包需要150G左右,因此硬盘不能小于150G)。

源码的下载

 1.安装git
sudo apt-get install git
git config –global user.email “test@test.com”
git config –global user.name “test”
2.安装repo工具
mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
3.选取源码
[源码列表](https://blog.csdn.net/u013005791/article/details/52228727)
本人经验第一次选取了8.0.1版本,启动虚拟机黑屏,换内核多种方法无效,查不到原因。
后面改用8.1.0版本后正常启动解决了黑屏问题。
4.下载源码
由于不能访问android官网,这里通过使用【清华源:(https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/)】代替。
4.1建立源码文件夹
mkdir source
cd source
4.2初始化仓库
repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-8.1.0_r1

如果提示无法连接到 gerrit.googlesource.com,请参照git-repo的帮助页面的更新一节。
4.3 同步源码

repo sync

中断或显示完成后可以多次执行此命令以确保同步完成。

源码编译

1.按照JDK
由于版本为android-8.1.0,因此需要选择jdk8。
sudo apt-get update
sudo apt-get install openjdk-8-jdk
2.Ubuntu16.04下的依赖
sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g++-multilib
sudo apt-get install -y git flex bison gperf build-essential libncurses5-dev:i386
sudo apt-get install tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
sudo apt-get install dpkg-dev libsdl1.2-dev libesd0-dev
sudo apt-get install git-core gnupg flex bison gperf build-essential
sudo apt-get install zip curl zlib1g-dev gcc-multilib g++-multilib
sudo apt-get install libc6-dev-i386
sudo apt-get install lib32ncurses5-dev x11proto-core-dev libx11-dev
sudo apt-get install libgl1-mesa-dev libxml2-utils xsltproc unzip m4
sudo apt-get install lib32z-dev ccache

部分有重复,不影响。
3.编译
3.1初始化

#初始化环境
source build/envsetup.sh


3.2选择编译目标

lunch

这里选择28,即aosp_angler_userdebug:


3.3进行编译

make -j2

等待直到显示编译成功完成。
3.3.1编译问题Out of memory error
由于编译任务繁重,编译过程中个人笔记本经常会出现内存耗尽问题。


解决方案:

#设置下内存,重启下jack-admin,重新make编译即可
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
make

运行模拟器

source build/envsetup.sh
lunch(选择刚才你设置的目标版本,比如这里了我选择的是2)
emulator

生成卡刷包

make otapackage

之前在执行这个命令时一直报错:

ninja error:unknown target otapackage

开始时选择的编译目标是:aosp_arm-eng,这个是针对模拟器的,后面按照makefile排查发现针对模拟器的编译默认是不会生成ota包的,所以报错unknown target otapackage。
后面选择了aosp_angler-usedebug版本,正常生成ota包。
因此在lunch那里需要选择能生成对应ota包的编译目标才行。

整体到此就结束了,只是给自己的编译过程记录下。

参考:
(https://blog.csdn.net/lyb2518/article/details/77072792)

android 8.1.0编译以及卡刷包制作教程相关推荐

  1. 中兴B863AV3.2-M_安卓9.0系统_线刷包及教程

    中兴B863AV3.2-M_安卓9.0系统_线刷包及教程 固件介绍: 此版本分2种主控,一种的s905l3a,另外一种是s905l3a-b. 1.调出原厂固件屏蔽的wifi,开放原厂固件屏蔽的市场安装 ...

  2. 来自越南的泛泰binx一键解压_卡刷包制作工具

    一.来历 一次偶然的机会,与越南的quangnhut123进行交流,我的PantechTools在越南竟然有了英文修改版--令我十分惊讶,也使我意识到技术交流的重要,于是我与quangnhut123交 ...

  3. 当前版本与卡刷包android_手机端提取Android 8.x及以上版本卡刷包中的system文件

    本教程全在手机端进行,仅适用于Android平台,当然部分步骤在电脑端也能够操作. 请务必尽可能的让手机空有足够的空间 你需要,Termux或者魔改版的Termux(UTermux)两者均可,以及解压 ...

  4. android更改卡刷代码,[备忘]Android线刷包转卡刷包制作过程

    第一步:安装JDK,下载制作工具 下载jdk并安装: 下载:simg2img_win.rar.Auto-sign.rar及官方的线刷ROM,META-INF.rar. JDK的安装和环境变量配置请自行 ...

  5. android 游玩南昌 模块,模块玩起来:Android 7.X可用的Xposed框架卡刷包放出

    感谢IT之家网友ZeroSimple的线索投递 7月20日消息 自适用于Android 7.X的Xposed框架现身Github以来,ROM开发者以及喜欢折腾的安卓玩家纷纷尝试编译和使用,毕竟Andr ...

  6. 魔百盒CM211-1增强版2+16卡刷固件及教程

    魔百盒CM211-1增强版2+16当贝纯净版桌面卡刷包及教程 说明: 固件内置了语音,当贝桌面纯净完美版,去掉了所有内置,只保留一个当贝市场,开机动画为华为鸿蒙开机动画 重置机顶盒密码10086. [ ...

  7. ownhere android 4.0 rom 三星i9100刷机,三星i9100g的4.1和4.2 rom刷机包(线刷和卡刷包)...

    在这里整理了几款三星i9100g的最新的4.1 4.2的rom刷机包,当然其中还有一些经典的4.0的,也是不错的,大家可以根据自己的需求来下载了. 一:三星i9100G基于CM10.1制作|安卓4.2 ...

  8. 当前版本与卡刷包android_Z2 Android 6.0.1卡刷包 23.5.0.486发布,快刷起来!(来自XDA)...

    本帖最后由 我是谈胖佬 于 2016-5-29 13:57 编辑 正式版固件23.5.A.0.575也已经发布了,大家不要刷这个测试版本了,我看回复问题还是比较多的,大家找最新正式版固件强刷吧,梦想好 ...

  9. zuk z2 Android7.0官方,首发ZUK Z2官方固件ZUI2.5安卓7.0卡刷包!

    原标题:首发ZUK Z2官方固件ZUI2.5安卓7.0卡刷包! ☆基于版本:官方固件ZUI 2.5 ☆适用机型:ZUK Z2/Z2131 ☆反馈Q 群:群号:414088773 ☆制作作者:殇夜丶 ☆ ...

  10. rom lg g2 f320d android 4.4.2,LG G2全系机型刷机LG G3系统刷机包4.4.2ROM卡刷包ATX完美ART...

    ROM名称   LG G2全系机型刷机LG G3系统刷机包4.4.2ROM卡刷包ATX高级设置完美ART ROM制作者:    牛肉粉 安卓版本    Android4.4.2 ROM 基于版本    ...

最新文章

  1. WebKit、Gecko使用图形库
  2. ios 团购信息客户端demo(三)
  3. git log 获取构建时间_Docker 运行 Jenkins 自动化构建 .NET Core 项目
  4. windows安装 Chocolatey
  5. Cocos数据篇[3.4](4) ——plist文件操作
  6. HTML基础(part8)--HTML5
  7. 在 IntelliJ IDEA 中部署应用到服务器
  8. opencv threshold_OpenCV-Python 立体图像的深度图 | 五十二
  9. spark学习-Spark算子Transformations和Action使用大全(Transformations章(一))
  10. Python+matplotlib绘制三维图形5个精选案例
  11. kotlin_Kotlin
  12. poj 1503 Integer Inquiry高精度
  13. ADS EM MODEL 问题
  14. 最新圣思园经典Java培训教学全套
  15. 埃默里大学计算机科学排名,美国埃默里大学各专业的最新排名分析
  16. 性能分析26-tomcat优化P61
  17. (纯原创)分解质因数
  18. Python小虫收集箱
  19. 牢记昨天的教训_学习新事物时要牢记的科学支持方法
  20. Conda - Miniconda - Installing (安装) - Uninstalling (卸载)

热门文章

  1. 部署YUM仓库服务与PXE网络装机,无人值守安装
  2. 图库网站Unsplash高清原图爬虫
  3. MATLAB websave批量下载(URL)
  4. 双网卡实现同时上内外网方法
  5. java毕业设计C语言教学辅导网站Mybatis+系统+数据库+调试部署
  6. 两种“新型”的javaweb后门(jspx和Java Logger)
  7. css表格一行删除线,EXCEL电子表格一行中间画一条删除线怎么画/excel表格如何划掉数据...
  8. openGL之API学习(二零四)GL_TEXTURE_MIN_FILTER GL_TEXTURE_MAG_FILTER
  9. 消防信号总线原理_消防主机总线原理 什么是消防二总线
  10. php excel 下拉菜单,Yii2+phpexcel导出二级联动菜单