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