Ubuntu 22.04 compile aosp 13 source code

1.

Execute sudo apt install curl

test@test-Lenovo:~$mkdir~/bin

test@test-Lenovo:~$ PATH=~/bin:$PATH

test@test-Lenovo:~$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo

test@test-Lenovo:~$ chmod a+x ~/bin/repo

test@test-Lenovo:~$ mkdir aosp

test@test-Lenovo:~$ cd aosp/

test@test-Lenovo:~/aosp$ repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest

/usr/bin/env: ‘python’: No such file or directory

5.python3 had installed,so should link:

test@test-Lenovo:~$ cd /usr/bin/

test@test-Lenovo:/usr/bin$ ls -l | grep python

lrwxrwxrwx 1 root root 23 Jul 22 03:07 pdb3.8 -> ../lib/python3.8/pdb.py

lrwxrwxrwx 1 root root 31 7月 22 03:07 py3versions -> ../share/python3/py3versions.py

lrwxrwxrwx 1 root root 9 7月 22 03:07 python3 -> python3.8

-rwxr-xr-x 1 root root 5490352 6月 2 18:49 python3.8

-rwxr-xr-x 1 root root 384 3月 28 2020 python3-futurize

-rwxr-xr-x 1 root root 388 3月 28 2020 python3-pasteurize

test@test-Lenovo:/usr/bin$ sudo ln -s python3 python

test@test-Lenovo:/usr/bin$ ls -l | grep python

lrwxrwxrwx 1 root root 23 Jul 22 03:07 pdb3.8 -> ../lib/python3.8/pdb.py

lrwxrwxrwx 1 root root 31 7月 22 03:07 py3versions -> ../share/python3/py3versions.py

lrwxrwxrwx 1 root root 7 11月 15 22:53 python -> python3

lrwxrwxrwx 1 root root 9 7月 22 03:07 python3 -> python3.8

-rwxr-xr-x 1 root root 5490352 6月 2 18:49 python3.8

-rwxr-xr-x 1 root root 384 3月 28 2020 python3-futurize

-rwxr-xr-x 1 root root 388 3月 28 2020 python3-pasteurize

test@test-Lenovo:~/aosp$ repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest

repo: error: "git" is not available

repo: error: [Errno 2] No such file or directory: 'git'

Please make sure git is installed and in your path.

test@test-Lenovo:~/aosp$ sudo apt-get install git

test@test-Lenovo:~/aosp$ repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest

Downloading Repo source from https://gerrit.googlesource.com/git-repo

During the running process of the repo, it will try to access the official git source (errit.googlesource.com) to update itself. If you want to use tuna's mirror source to update, you can copy the following content to your ~/.bashrc

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

test@test-Lenovo:~/aosp$ vi ~/.bashrc

test@test-Lenovo:~/aosp$ sudo apt-get install vim

test@test-Lenovo:~/aosp$ source ~/.bashrc

test@test-Lenovo:~/aosp$ repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest

Downloading Repo source from https://mirrors.tuna.tsinghua.edu.cn/git/git-repo

fatal: cannot make /home/test/aosp/.repo/repo directory: File exists

fatal: cloning the git-repo repository failed, will remove '.repo/repo'

test@test-Lenovo:~/aosp$ rm .repo/ -rf

test@test-Lenovo:~/aosp$ repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest

Downloading Repo source from https://mirrors.tuna.tsinghua.edu.cn/git/git-repo

fatal: unable to access 'https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/': server certificate verification failed. CAfile: none CRLfile: none

test@test-Lenovo:~/aosp$ git config --global http.sslverify false

test@test-Lenovo:~/aosp$ git config --global user.email "[email protected]"

test@test-Lenovo:~/aosp$ git config --global user.name "test"

test@test-Lenovo:~/aosp$ repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest

repo has been initialized in /home/test/aosp

test@test-Lenovo:~/aosp$ repo sync

9.install java jdk:

Execute sudo apt-get install openjdk-8-jdk

10.install all libs:

sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev

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

sudo apt-get install git-core gnupg flex bison gperf build-essential

sudo apt-get install zip curl zlib1g-dev gcc-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

sudo apt-get install libssl-dev libncurses5

Summarize by yourself: Branch switching =============================================== =======================

Switch branches to a certain source code version

Go to /aosp/.repo/manifests$

Use the command git branch -a | grep "android-13"

All 13 branches can be listed

remotes/origin/android-13.0.0_r1

remotes/origin/android-13.0.0_r10

remotes/origin/android-13.0.0_r11

remotes/origin/android-13.0.0_r12

remotes/origin/android-13.0.0_r13

...

2. Switch branches

repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b android-13.0.0_r6

Compile source code

. build/envsetup.sh

lunch sdk_phone_x86_64 #must this

make

emulator

Other ways to download source code================================================ ==============

12.other function download the source:

wget -c https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar # Download the initialization package

tar xf aosp-latest.tar # Decompress

cd AOSP # Decompress the AOSP project directory

# You can't see anything by ls at this time, because there is only one hidden .repo directory

repo sync # Synchronize normally to get the complete directory

# or repo sync -l only checkout code

repo sync may has this error:

error: Entry ‘command.py’ not uptodate. Cannot merge.

fatal:xxxxxxxx’'v2.17.3.0

cd .repo/repo

git pull

Guess you like

Origin blog.csdn.net/professionIT/article/details/132859843