לפני שמורידים ויוצרים את הענף האחרון של גרסת Android (android16-release) ממקור Android, צריך לוודא שהחומרה עומדת בדרישות הנדרשות ושהתוכנה הנדרשת מותקנת בצורה תקינה. חשוב להכיר גם את המונחים הבאים:
- Git
- Git היא מערכת חינמית לניהול גרסאות בקוד פתוח. Android משתמשת ב-Git לפעולות מקומיות כמו יצירת ענפים, התחייבויות, הבדלים ועריכות. לקבלת עזרה בלימוד Git, אפשר לעיין במסמכי התיעוד של Git.
- Repo
- Repo הוא wrapper של Python סביב Git שמפשט ביצוע של פעולות מורכבות בכמה מאגרי Git. Repo לא מחליף את Git בכל הפעולות של בקרת גרסאות, אלא רק מקל על ביצוע פעולות מורכבות ב-Git. Repo משתמש בקובצי מניפסט כדי לצבור פרויקטים של Git בפרויקט העל של Android.
- קובץ מניפסט
- קובץ מניפסט הוא קובץ XML שמציין איפה ממוקמים הפרויקטים השונים של Git במקור של Android בתוך עץ המקור של AOSP.
דרישות לציוד ל-Meet
עמדת הפיתוח צריכה לעמוד בדרישות החומרה הבאות או להיות טובות יותר:
מערכת x86 בגרסת 64 ביט.
לפחות 400 GB של שטח פנוי בדיסק כדי לבצע checkout וליצור את הקוד (250 GB ל-checkout + 150 GB ליצירה).
זיכרון RAM בנפח 64GB לפחות. Google משתמשת במכונות עם 72 ליבות ו-RAM בנפח 64 GB כדי לבנות את Android. עם הגדרת החומרה הזו, בנייה מלאה של Android נמשכת כ-40 דקות, ובנייה מצטברת של Android נמשכת רק כמה דקות. לעומת זאת, בנייה מלאה במכונה עם 6 ליבות ו-64 GB של RAM נמשכת כ-6 שעות.
עמידה בדרישות של מערכת ההפעלה
במחשב העבודה שלכם לפיתוח צריך להיות מותקן כל הפצת 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. הגרסה העדכנית ביותר של Android מגיעה עם גרסאות מוכנות מראש של OpenJDK, Make ו-Python 3, כך שלא נדרשים שלבי התקנה נוספים. בקטע הבא מוסבר איך להתקין את Repo.
התקנת Repo
כדי להתקין את Repo:
מורידים את פרטי החבילה הנוכחית:
sudo apt-get update
מריצים את הפקודה הבאה כדי להתקין את Repo launcher:
sudo apt-get install repo
הכלי Repo launcher מספק סקריפט Python שמאתחל אתחול ומוריד את הכלי Repo המלא.
אם הפקודה מסתיימת ללא שגיאות, מדלגים לשלב 4.
(אופציונלי) מתקינים את Repo באופן ידני באמצעות סדר הפקודות הבא:
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 launcher.
בודקים את הגרסה של Repo launcher:
repo version
הפלט צריך לציין גרסה 2.4 ומעלה, לדוגמה:
repo launcher version 2.45
הגדרת ספריית פלט חלופית
כברירת מחדל, הפלט של כל בנייה מאוחסן בספריית המשנה out/
של עץ המקור התואם. אפשר לשנות את הספרייה הזו על ידי ייצוא של משתנה הסביבה OUT_DIR
. לדוגמה, אם רוצים לאחסן את הפלט בכונן אחר, אפשר להפנות את OUT_DIR
לכונן הזה:
export OUT_DIR=my_other_drive
מה השלב הבא?
- כדי להוריד את קוד המקור, ממשיכים אל הורדת המקור של Android.
- לקבלת עזרה בלימוד Git, אפשר לעיין במסמכי התיעוד של Git.
- מידע נוסף על Repo זמין בקובץ ה-README של Repo.
- רשימה של כל הפקודות של Repo מופיעה בחומרי העזר בנושא פקודות Repo.