| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 使用Ubuntu18.04编译android8.1 -> 正文阅读 |
|
[系统运维]使用Ubuntu18.04编译android8.1 |
使用虚拟机中的Ubuntu18.04编译android8.1 16G的内存;200G的存储盘。 Ubuntu18.04 在开始工作时,首先要保证
命令能够正常执行,即首先执行该命令保证apt-get是最新的。
出现这种问题可能是由于使用的网络有问题,所使用的网络把一些源屏蔽掉了。
3.2、下载一些依赖
由于在编译的时候会出现如下错误
如图所示 如果之前已经安装配置过git,该步骤可以省略。
想要正常使用git命令还需配置git的Email和name。
4.2、下载repo repo是Android为了方便管理多个git库而开发的Python脚本。repo的出现,并非为了取代git,而是为了让Android开发者更为有效的利用git。 Android源码包含数百个git库,仅仅是下载这么多git库就是一项繁重的任务,所以在下载源码时,Android就引入了repo。
下载完后,为repo脚本添加可执行权限:
然后添加repo(路径目录如:~/git-repo/repo)到PATH环境变量
然后到打开~/git-repo/repo文件,将REPO_URL替换为清华镜像地址,以避免下载android源码时可能出现的无法连接到 gerrit.googlesource.com问题。
替换后如下所示。
由于repo脚本是使用python写的。所以虚拟机里面必须安装python才能执行repo脚本。
5、下载android源码 首先创建一个自己存放源码的目录,我是放在~/Android/source路径下的,然后cd到对应的路径下执行下面命令
然后执行如下命令可以查看可以下载的android源码分支.
这里同步android-8.1.0_r41分支并拉取对应分支源码
这个过程很漫长,具体时间依据网速而定。我同步了大概7个小时。
如果一切正常最后同步完成之后,会自动将文件checkout,并显示成功。 进到源码目录执行
初始化编译环境后,引入了一些执行脚本,其中就包括马上要使用的lunch指令。通过lunch指令可以设置编译目标,所谓的编译目标就是生成的镜像要运行在什么样的设备上。这里我们设置的编译目标是aosp_arm64-eng,因此执行指令
简单的说明下,aosp表示Android Open Source Project,arm64表示是使用arm64 cpu的设备,eng表示engineer版本,其直接开放了一些root等权限。当然直接使用lunch命令会列出所有可选的编译目标。 最后,我们便可通过如下命令来开始编译andriod源码
这里的j8表示可以开启8个线程来参与编译源码,这里指定的线程数一般应该遵从cpu内核数的2倍这个规律,可以通过cat /proc/cpuinfo查看相关cpu信息。 出现如下所示表示编译成功。 在完成编译后,我们可以直接通过emulator命令来运行模拟器
运行出如图所示的界面表示模拟成功。 ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 18:26:58- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |