להגדיר לפיתוח AOSP (9.0 ואילך)

לפני שמורידים ובונים את ההסתעפות main של מקור Android, צריך לוודא שהחומרה שלך עומדת בדרישות ההכרחיות והתוכנה הנדרשת מותקנת כראוי. עליך להכיר גם את המונחים הבאים:

Git
Git היא מערכת חינמית לניהול גרסאות שמופצת בקוד פתוח. Android משתמש ב-Git לפעולות מקומיות כגון הסתעפות, שמירות, הבדלים ועריכות. לקבלת עזרה בלימוד Git, אפשר לעיין במסמכי התיעוד של Git.
מאגר
Repo הוא wrapper של Python סביב Git שמפשט את הביצועים פעולות מורכבות במספר מאגרים של Git. המאגר לא מחליף את Git בכל הפעולות של ניהול הגרסאות, הוא רק הופך פעולות מורכבות של Git לפשוטות יותר להשיג. המאגר משתמש בקובצי מניפסט כדי לצבור פרויקטים של Git פרויקט-על ב-Android.
קובץ מניפסט
קובץ מניפסט הוא קובץ XML שמציין איפה נמצאים הפרויקטים השונים של Git מקורות ה-Android ממוקמים בעץ המקור של AOSP.

דרישות ציוד ל-Meet

תחנת העבודה של הפיתוח צריכה לעמוד בדרישות החומרה האלה דרישות:

  • מערכת x86 בגרסת 64 ביט.

  • מקום פנוי בכונן של לפחות 400GB כדי לבדוק את הקוד ולבנות אותו (250GB לבדיקה + 150GB ל-build).

  • זיכרון RAM בנפח 64GB לפחות. Google משתמשת במחשבים עם 72 ליבות עם 64GB של זיכרון RAM כדי לפתח את Android. בתצורת החומרה הזו, כ-40 דקות לגרסה מלאה של Android, ורק כמה דקות ל-build מצטבר של Android. לעומת זאת, נדרשות כ-6 שעות build מלא עם מחשב עם 6 ליבות ו-64GB של RAM.

עמידה בדרישות של מערכת ההפעלה

תחנת העבודה של הפיתוח חייבת להריץ כל הפצת Linux של 64 ביט עם GNU C Library (glibc) 2.17 ואילך.

התקנת החבילות הנדרשות

כדי ליצור Android מגרסה 11 ואילך, צריך להשתמש ב-Ubuntu מגרסה 18.04 ואילך. כדי להתקין עבור Ubuntu 18.04 ואילך, מריצים את הפקודה הבאה:

sudo apt-get install git-core gnupg flex bison build-essential zip curl zlib1g-dev libc6-dev-i386 x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig

מבין החבילות שמותקנות, הפקודה הזו מתקינה את Git, שמשמש מורידים את המקור של ה-AOSP.

התקנת התוכנה הנדרשת

לפני שאפשר לעבוד עם AOSP, צריך להתקין התקנות של OpenJDK, Make, Python 3 ו-Repo. סניף ראשי של AOSP ב-Android כולל גרסאות מוכנות מראש של OpenJDK, Make ו-Python 3, כך שיש צורך בהתקנה נוספת אין צורך לבצע את הפעולות הנדרשות. בקטע הבא מוסבר איך להתקין את ה-Repo.

התקנת המאגר

כדי להתקין את ה-Repo, מבצעים את השלבים הבאים:

  1. מורידים את פרטי החבילה הנוכחיים:

    sudo apt-get update
    
  2. מריצים את הפקודה הבאה כדי להתקין את מרכז האפליקציות של ה-Repo:

    sudo apt-get install repo
    

    מרכז האפליקציות של Repo מספק סקריפט Python שמאתחל תשלום ומוריד את הכלי המלא של Repo.

    אם הפעולה בוצעה ללא שגיאות, מדלגים לשלב 4.

  3. (אופציונלי) מתקינים את המאגר באופן ידני באמצעות סדרת הפקודות הבאה:

    export REPO=$(mktemp /tmp/repo.XXXXXXXXX)
    curl -o ${REPO} https://storage.googleapis.com/git-repo-downloads/repo
    gpg --recv-keys 8BB9AD793E8E6153AF0F9A4416530D5E920F5C65
    curl -s https://storage.googleapis.com/git-repo-downloads/repo.asc | gpg --verify - ${REPO} && install -m 755 ${REPO} ~/bin/repo
    

    שלוש הפקודות הראשונות מגדירות קובץ זמני, מורידים קובץ Repo לקובץ ו לוודא שהמפתח שסופק תואם למפתח הנדרש. אם הפקודות האלה הפקודה הסופית מתקינה את מרכז האפליקציות של ה-Repo.

  4. איך מאמתים את גרסת מרכז האפליקציות:

    repo version
    

    הפלט צריך לכלול גרסה 2.4 ומעלה, לדוגמה:

    repo launcher version 2.45

הגדרה של ספריית פלט חלופית

כברירת מחדל, הפלט של כל build מאוחסן בספריית המשנה out/ של עץ המקור התואם. כדי לשנות את הספרייה הזו, אפשר לייצא את משתנה סביבה OUT_DIR. לדוגמה, אם רוצים לאחסן את הפלט בנהיגה אחרת, אפשר להפנות את OUT_DIR לאחסון הזה:

export OUT_DIR=my_other_drive

מה השלב הבא?