Schritt für Schritt zur Implementierung von Ubuntu20.04 kompilieren Sie den Quellcode des Android10-Systems

1. Einleitung

    Kompilieren Sie das Android-System mit Ubuntu20.04, um die Kompilierung des Android10-Quellcodes zu erstellen

2. Detaillierte Schritte

   1. Laden Sie VMware Workstation Pro herunter

    Als Beispiel dient hier die neueste Version von VMware Workstation Pro 16. Die Download-Adresse der offiziellen Website lautet: Windows Virtual Machine | Workstation Pro | VMware | CN  Wählen Sie die Testversion

 Der Installationsprozess ist relativ einfach, hier ist eine ausführliche Einführung.

    2. Laden Sie Ubuntu20.04 herunter

        Hier wird die Version 20.04 verwendet, und die offizielle Downloadadresse lautet: Ubuntu system download | Ubuntu

       Finden Sie die entsprechende Ubuntu-Version und laden Sie sie herunter

    3. Installieren Sie Ubuntu20.04 auf der VM

       1. Wählen Sie zum Erstellen einer neuen virtuellen Maschine auf der VM-Startseite, wie in der Abbildung unten gezeigt

   

  2. Wählen Sie Typische Installation

    

 3. Suchen Sie das heruntergeladene Ubuntu-System in der Installations-CD-Image-Datei, wie in der Abbildung unten gezeigt

    

 4. Füllen Sie die Benutzerinformationen aus

   

 5. Legen Sie den Festplattenspeicherort des Systems in der physischen Maschine fest

  

 6. Legen Sie die Größe der Festplatte fest

   Die empfohlene Größe der Festplatte beträgt 300 G. Der Quellcode des Android-Systems ist ziemlich groß (der Quellcode von Android 10, der damals heruntergeladen wurde, betrug fast 100 G), und die nachfolgende Kompilierung wird etwa 200 G betragen, falls der Speicherplatz vorhanden ist unzureichend, was dazu führt, dass das Android-System nicht kompiliert werden kann.

  

7. Stellen Sie den Speicher und den Prozessor von Ubuntu ein

   

 Stellen Sie den Speicher auf 16 GB ein (es wird empfohlen, den Speicher auf 16 GB einzustellen, wenn er zu klein ist, treten viele anormale Probleme wie Speicherüberlauf usw. und verschiedene seltsame Probleme auf), und der Prozessor hat 8 Kerne. Außerdem ist zu beachten, dass Sie auf dem Prozessor das virtualisierte VT ankreuzen müssen, da sonst nach erfolgreicher Kompilierung des Android-Systems der Android-Emulator nicht mit dem Emulator-Befehl gestartet werden kann.

 

 Klicken Sie auf Finish, das Ubuntu-System kann auf der VM installiert werden

  

Nach erfolgreicher Installation stellt sich Ubuntu wie folgt dar. Damit ist die Installation von Ubuntu 20.04 auf der VM abgeschlossen.

 4. Laden Sie den Android-Quellcode herunter

     Bevor Sie den Android-Quellcode herunterladen, müssen Sie die Kompilierungsabhängigkeitsbibliothek und den Tool-Download installieren.

 1. Git installieren 

sudo apt-get install git

Überprüfen Sie nach erfolgreicher Installation die Git-Version

git --version

 Die Git-Version wird angezeigt, dh die Installation ist erfolgreich

 Richten Sie nach dem Herunterladen von Git ein Git-Konto ein

git config --global user.email "[email protected]"
git config --global user.name "xxxxx"

2. Installieren Sie jdk

sudo apt-get install openjdk-8-jdk

  3. Konfigurieren Sie die Umgebungsvariable PATH

mkdir ~/bin
echo "PATH=~/bin:\$PATH" >> ~/.bashrc
source ~/.bashrc

  4. Installieren Sie die Curl-Bibliothek

sudo apt-get install curl

  5. Repo herunterladen und Berechtigungen festlegen

curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo > ~/bin/repo
chmod a+x ~/bin/repo

 6. Python installieren

sudo apt-get install python

 Überprüfen Sie die Python-Version

python --version

 Wenn Sie die Python-Version sehen, war die Installation erfolgreich

 Quellcode herunterladen

1. Erstellen Sie das Android-Quellcodeverzeichnis:

mkdir source
cd source
mkdir android_10
cd android_10

2. Stellen Sie die Adresse des Repos ein, der hier verwendeten Tanna-Quelle:

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

 3. Lager initialisieren:

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest

4. Android-Version erstellen und initialisieren:

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-10.0.0_r10

5. Starten Sie die Synchronisierung der Codequelle:

repo sync

 Der Android-Quellcode ist sehr groß und muss lange synchronisiert werden. Wenn während des Synchronisierungsvorgangs eine Stelle längere Zeit hängen bleibt, können Sie mit Strg + Z die Synchronisierung unterbrechen und Repo synchronisieren, um zu synchronisieren

Kompilieren Sie den Quellcode

  1. Installieren Sie Abhängigkeiten

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
sudo apt-get install libssl-dev

  Bei den obigen Installationsabhängigkeiten treten zwei Probleme auf

   (1) Bei der Installation von sudo apt-get install libesd0-dev wird der Fehler gemeldet, dass das Paket libesd0-dev nicht gefunden werden kann

Lösung:

sudo gedit /etc/apt/sources.list  //在行尾添加如下两行的内容
deb http://us.archive.ubuntu.com/ubuntu/ xenial main universe
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial main universe

   (2) 安装 apt-get install lib32ncurses5-dev可能报"lib32ncurses5-dev : Hängt ab von: libncurses5-dev (= 6.0+20160213-1ubuntu1) Probleme können nicht behoben werden, Sie haben beschädigte Pakete."

Lösung:

  1. Installieren Sie aptitude

sudo apt install aptitude

 2. Installieren Sie lib32ncurses5-de

  Es ist zu beachten, dass die Installation dieser lib32ncurses5-de auf root-Berechtigung umgestellt werden muss (die erste Installation von Ubuntu root-Passwort ist zufällig, Sie können sudo passwd root verwenden), um das Passwort einzugeben oder zu ändern

sudo passwd root

  Verwenden Sie su zur Eingabe, um zum Root-Benutzer zu wechseln

su

  Geben Sie einfach das Root-Passwort ein, in der Befehlszeile des Root-Benutzers steht ein #, dh wechseln Sie zum Superuser und installieren Sie lib32ncurses5-de

aptitude install lib32ncurses5-dev

  Bei der Installation werden Sie gefragt, ob Sie die aktuelle Version behalten möchten, geben Sie zuerst n ein, und dann werden Sie gefragt, ob Sie ein Downgrade durchführen möchten, geben Sie y ein

Kompilieren beginnen

source build/envsetup.sh
lunch 21  (X86版本)
make -j8

Hier bedeutet -j8, dass 8 Threads an der Kompilierung teilnehmen dürfen Diese Zahl entspricht im Allgemeinen der Anzahl der CPU-Kerne * 2. Sie können zugehörige CPU-Informationen über cat /proc/cpuinfo anzeigen.

Die Kompilierung ist erfolgreich, wie unten gezeigt

Starten Sie den Emulator

emulator

 Erfolgreich ausgeführt, das ist der von uns manuell kompilierte Android-Quellcode.

Ich denke du magst

Origin blog.csdn.net/h5630/article/details/127715207
Empfohlen
Rangfolge