android 源码编译android 12

目录

一、python安装 

二、repo管理多个git

   a.第一步,   新建一个空白文件夹保存repo引导文件,并包含你的路径

   b.下载启动器

 c.将git-repo中的repo文件复制到 1 创建的.bin目录中

 d.修改权限

e. 执行版本检查

三、初始化工程

  a.执行创建文件夹命令,创建android10文件夹

  b.切换到android12目录下

   c.初始化android12

d.同步下载android源代码 


一、python安装 

       python2

     sudo  apt-get install python 

        python3

     sudo  apt-get install python3

二、repo管理多个git

   repo因为Android源码由多个git组成,故安装repo利于管理git工程.

    repo安装步骤

   a.第一步,   新建一个空白文件夹保存repo引导文件,并包含你的路径

  mkdir ~/binPATH=~/bin:$PATH    //配置环境变量

   b.下载启动器

   注意

   如果提示 curl: command not found ,那是因为没装 Curl

   执行 :sudo  apt-get install curl -y

curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
或
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repochmod a+x ~/bin/repo

我采用的是另外一种方法

 首先

sudo snap install git-repo

其次

git clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo下载repogit clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo

 c.将git-repo中的repo文件复制到 1 创建的.bin目录中

cd git-repo/
cp repo ~/bin/

 d.修改权限

chmod a+x ~/bin/repo

e. 执行版本检查

repo -version 如果报错File "/bin/repo", line 51def print(self, *args, **kwargs):^SyntaxError: invalid syntax

发现是python链接的不对,我的ubuntu装了两个版本的python,分别是python2.7和python3.8,输入python后提示是python2.7,因为python软链接到python2上面了:

     /usr/bin/python
    -> /usr/bin/python2*

repo需要的是python3,所以需要修改一下上面的软链接:   

sudo rm /usr/bin/python
sudo ln -s /usr/bin/python3 /usr/bin/python


三、初始化工程

  a.执行创建文件夹命令,创建android12文件夹

mkdir android12

  b.切换到android12目录下

cd android12/

   c.初始化android12

repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b android-security-12.0.0_r47

 注意如果被拒绝

repo的运行过程中会尝试访问官方的git源更新自己,如果想使用tuna的镜像源进行更新,可以将如下内容复制到你的~/.bashrc

export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo'

初始化git

git config --global user.email "450561200@qq.com"
git config --global user.name "mogutou"

 再执行

repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b android-security-12.0.0_r47

d.同步下载android源代码 j4代表的是4个线程

repo sync -j4