Android AOSP源码编译——AOSP下载(一)

news2024/11/29 0:49:15

一、电脑配置
Ubuntu16.04 + 16G,硬盘的大小最好大于300G (我这边是找了个win电脑装了双系统 没有使用虚拟机的方式)
在这里插入图片描述 二、基础环境配置
1、安装git

sudo apt install git

配置git email和name

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

2、安装依赖工具(需要确认的就一直y就好)

sudo apt install git-core libssl-dev libffi-dev gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev libz-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip

3、安装python
执行 python --version 可以看到ubuntu自带的python版本是Python 2.7.12,这里我们需要再安装一个python3
这里我是在下载文件夹打开终端执行下面命令进行下载

wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz

下载完成后解压

tar xvf Python-3.7.1.tgz

进入解压后的文件夹,编译安装python3

./configure
sudo make install

配置update-alternatives(用于处理 Linux 系统中软件版本的切换,使其多版本共存)

sudo update-alternatives --install /usr/bin/python python python的安装地址 权重号

我这边根据安装地址执行下面命令

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 2
sudo update-alternatives --install /usr/bin/python python /usr/local/bin/python3.7 3

现在python2和python3都加入到update-alternatives工具了。

然后可以使用 sudo update-alternatives --config python来选择python版本

在这里插入图片描述4、安装openjdk 8

sudo apt-get install openjdk-8-jdk

到这里我们的基本环境配置已经完成了,接下来开始下载并编译AOSP 源码。

三、下载AOSP源码

参考中科大AOSP镜像使用文档:https://mirrors.ustc.edu.cn/help/aosp.html

1、切换到用户目录下:cd ~
2、按照AOSP镜像使用文档输入命令

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

如果在执行curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo的时候失败了可以直接通过浏览器下载,复制到bin/下面也是那一样的。
接着执行

mkdir aosp
cd aosp

指定版本代码进行仓库初始化

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

如果提示无法连接到 gerrit.googlesource.com
在这里插入图片描述可以按照文档编辑 ~/bin/repo,把 REPO_URL 一行替换成下面的:REPO_URL = ‘https://gerrit-googlesource.proxy.ustclug.org/git-repo’
在这里插入图片描述再次执行初始化仓库命令,会发现出现server certificate verification failed,如下
在这里插入图片描述这时候我们可以关闭git的SSL校验

git config --global http.sslverify false
git config --global https.sslverify false

然后再次执行初始化仓库命令,需要y的直接y就好。

最后执行repo sync完成源码下载,下载的过程比较慢,如果中途失败可以多尝试几次。
在这里插入图片描述到这里我们的源码就下载完成了,接下来就是对源码进行编译了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/857976.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大环境下,企业如何找到大数据传输解决方案

随着网络技术的进步和智能设备的普及,大数据成为了当下社会的热点话题。但是,大数据的传输和处理仍然存在着很多的困难和挑战。在大数据传输中,如何解决数据量巨大、网络带宽不足、传输时间过长和数据安全等问题,是当前亟待破解的…

zmibra ssl证书替换

一、阿里云上申请证书 选择其他证书 二、证书上传及制作 首先当然要去阿里云申请的ssl证书下载其他类型证书,解压缩后有两个文件上传到相应目录, 文件名类似18131-mail.xxx.comkey和181111-mail.xxx.com.pem 创建目录 /opt/zimbra/ssl/aliyunssl/ 上传这两个文件 以上是…

JVM 查看配置 jinfo 及使用 jstat,查看堆栈jstack及GC

1. Jinfo 查看正在运行的Java应用程序的扩展参数: 包含 JVM 参数与 java 系统参数 命令: jinfo pid 2 jstat 查看堆内存使用情况及 GC 回收频率等: jstat [-命令选项] [vmid] [间隔时间(毫秒)] [查询次数] 2.1 jstat -gc pid 最常用,可…

多区域平台lazada,虾皮电商商品详情API接口返回值说明

Lazada和虾皮(Shopee)都是知名的电商平台,主要在东南亚地区运营。以下是关于它们的一些信息: Lazada(来赞达): Lazada成立于2012年,起初是一个全球性的电子商务平台,后来…

如何使用Mac终端给树莓派pico构建C/C++程序进行开发,以及遇到各种问题该怎么处理,不使用任何IDE或编辑器(例如VS Code)

写本文的原因是官方的教程已经过时了,如果你现在按照官方教程来在 Mac 上进行配置,那么会遇到一堆问题,比如我几乎把能踩的“雷”都踩了。所以这里记录了完整过程,以及各种错误的原因和处理方法,不然以后换 Mac 了或者…

CH-87——矿井水除氟的技术汇总

矿井水除氟的要求一般是处理后水中的含氟量≤1.0mg/L。氟化物含量高的原水往往呈偏碱性,pH值常大于7.5。利用阴离子交换树脂上的可交换阴离子,去交换水中的氟离子,达到除氟目的。氟离子的选择交换性较大,树脂上的SO42-、Cl-等阴离…

回收站删除的文件怎么恢复?文件恢复方法就看这3个!

回收站是什么呢?一般来说,在我们使用电脑时,如果在电脑上进行删除操作,被删除的文件会被系统自动放入回收站中。这实际上也是在给电脑用户一个思考的时间,如果是误操作,可以通过回收站对文件进行还原&#…

在矩池云安装使用 PaddleHub 和 PaddlePaddle

在安装 PaddleHub 导入的时候我们常常会遇到各种错误,不是这个包没这个模块,就是哪个包没这个属性,每次遇到都会很头痛,网上也没有 PaddleHub 和 PaddlePaddle 对应的版本,只能自己慢慢尝试,通过不断查错误…

Nacos Server 安装

Nacos Server 安装 版本说明 查看方式 进入Spring Cloud Alibaba wiki查看版本对应关系,下载相应的版本。 组件版本关系 Spring Cloud Alibaba VersionSentinel VersionNacos VersionRocketMQ VersionDubbo VersionSeata Version2.2.6.RELEASE1.8.11.4.24.4.02…

论文讲解——TPU-MLIR: A Compiler For TPU Using MLIR

论文讲解——TPU-MLIR: A Compiler For TPU Using MLIR https://arxiv.org/pdf/2210.15016.pdf概览模型转换TranslationCanonicalizeLoweringLayerGroup BufferizationCalibration QuantizationCorrectness Check相关资料 https://arxiv.org/pdf/2210.15016.pdf 本文将对TPU…

Canal+Kafka实现Mysql数据同步

Canal介绍 canal [kənl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费 canal可以用来监控数据库数据的变化,从而获得新增数据,或者修改的数据。 canal是应阿里巴巴存在杭…

什么是NVME

1. 概念 NVM Express(NVMe),或称非易失性内存主机控制器接口规范(Non-Volatile Memory express),,是一个逻辑设备接口规范。他是与AHCI类似的、基于设备逻辑接口的总线传输协议规范(相当于通讯协议中的应用层&#xf…

全开源跨境电商一键铺货货源平台--后台数据采集功能

数据库设计在设计数据库时,需要考虑到以下信息: 货源信息:包括货源标题、价格、描述、图片等信息。 用户信息:包括用户名、密码、邮箱、电话等信息。 订单信息:包括订单号、用户信息、货源信息、支付信息等。 支付信息…

磁盘的管理

一、磁盘的分区 查看磁盘 lsblk fdisk -l 2、分区 没有e扩展,则都是主分区,已经有三个主分区了,剩下的全设置为扩展 查看分区结果: 二、格式化 三、挂载

Nginx1.24源码安装与部署

环境依赖包 zlib zlib-devel pcre pcre-devel 下载nginx安装包 1、下载nginx [rootnode01 ~]# wget http://nginx.org/download/nginx-1.24.0.tar.gz --2023-07-18 16:49:00-- http://nginx.org/download/nginx-1.24.0.tar.gz Resolving nginx.org (nginx.org)... 3.125.19…

Games101学习笔记1

2023-08-10开始接触图形学 Lecture 01--Overview of Computer Graphics Lecture 02 Review of Linear Algebra

UBIFS文件系统

https://blog.csdn.net/shichaog/article/details/45932339 引言 什么是UBIFS文件系统 UBIFS是UBI file system的简称,用于裸的flash设备,作为jffs2的后继文件系统之一。UBIFS通过UBI子系统处理与MTD设备之间动作。UBIFS文件系统更适合MLCNAND FLASH。…

第三章 图论 No.9有向图的强连通与半连通分量

文章目录 定义Tarjan求SCC1174. 受欢迎的牛367. 学校网络1175. 最大半连通子图368. 银河 定义 连通分量是无向图的概念,yxc说错了,不要被误导 强连通分量:在一个有向图中,对于分量中的任意两点u,v,一定能从…

ASP.NET Core中间件记录管道图和内置中间件

管道记录 下图显示了 ASP.NET Core MVC 和 Razor Pages 应用程序的完整请求处理管道 中间件组件在文件中添加的顺序Program.cs定义了请求时调用中间件组件的顺序以及响应的相反顺序。该顺序对于安全性、性能和功能至关重要。 内置中间件记录 内置中间件原文翻译MiddlewareDe…

生产排查org.apache.http.NoHttpResponseException: 127.0.0.1:9000 failed to respond

生产环境,请求方调用我方地址,发生异常NoHttpResponseException,错误详情: org.apache.http.NoHttpResponseException: 127.0.0.1:9000 failed to respondat org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(Def…