ตั้งค่าสำหรับการพัฒนาซอฟต์แวร์ AOSP (9.0 ขึ้นไป)

ก่อนดาวน์โหลดและสร้างสาขา main ของแหล่งที่มา Android โปรดตรวจสอบว่าฮาร์ดแวร์เป็นไปตามข้อกำหนดที่จำเป็นและติดตั้งซอฟต์แวร์ที่จำเป็นอย่างถูกต้องแล้ว และคุณควรทำความคุ้นเคยกับคำศัพท์ต่อไปนี้ด้วย

Git
Git เป็นระบบควบคุมเวอร์ชันแบบโอเพนซอร์สที่ใช้งานฟรีและเป็นโอเพนซอร์ส Android ใช้ Git สำหรับการดำเนินการภายใน เช่น การแตกกิ่ง การคอมมิต ความแตกต่าง และการแก้ไข หากต้องการความช่วยเหลือในการเรียนรู้เกี่ยวกับ Git โปรดดูเอกสารประกอบของ Git
ที่เก็บ
Repo คือ Wrapper ของ Python ที่เกี่ยวกับ Git ที่ช่วยลดความซับซ้อนของการดำเนินการที่ซับซ้อนในที่เก็บ Git หลายแห่ง Repo ไม่ได้มาแทนที่ Git สำหรับการดำเนินการควบคุมเวอร์ชันทั้งหมด เพียงแต่ช่วยให้การดำเนินการ Git ที่ซับซ้อนทำงานได้ง่ายขึ้น Repo ใช้ไฟล์ Manifest ในการรวมโปรเจ็กต์ Git ไว้ใน ซูเปอร์โปรเจ็กต์บน Android
ไฟล์ Manifest
ไฟล์ Manifest คือไฟล์ XML ที่ระบุตำแหน่งที่วางโปรเจ็กต์ Git ต่างๆ ในแหล่งที่มาของ Android ภายในแผนผังแหล่งที่มา AOSP

เป็นไปตามข้อกำหนดเกี่ยวกับฮาร์ดแวร์

เวิร์กสเตชันการพัฒนาของคุณควรมีคุณสมบัติตรงตามหรือสูงกว่าข้อกำหนดของฮาร์ดแวร์ต่อไปนี้

  • ระบบ x86 64 บิต

  • พื้นที่ว่างในดิสก์อย่างน้อย 400 GB สำหรับการชำระเงินและสร้างโค้ด (250 GB สำหรับการชำระเงิน + 150 GB สำหรับสร้าง)

  • RAM ต้องมีพื้นที่อย่างน้อย 64 GB Google ใช้เครื่อง 72 แกนที่มี RAM ขนาด 64 GB เพื่อสร้าง Android การกำหนดค่าฮาร์ดแวร์นี้จะใช้เวลาประมาณ 40 นาทีในการสร้าง Android เวอร์ชันเต็ม และใช้เวลาเพียงไม่กี่นาทีสำหรับบิลด์ที่เพิ่มขึ้นของ Android ในทางตรงกันข้าม บิลด์เต็มรูปแบบที่มีเครื่อง 6 คอร์ซึ่งมี RAM ขนาด 64 GB จะใช้เวลาประมาณ 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 AOSP สาขาหลักของ Android มาพร้อมกับเวอร์ชันที่สร้างไว้ล่วงหน้าของ OpenJDK, Make และ Python 3 จึงไม่จำเป็นต้องมีขั้นตอนการติดตั้งเพิ่มเติม ส่วนต่อไปนี้จะอธิบายวิธีติดตั้งที่เก็บ

ติดตั้งที่เก็บ

ทำตามขั้นตอนต่อไปนี้เพื่อติดตั้งที่เก็บ

  1. ดาวน์โหลดข้อมูลแพ็กเกจปัจจุบันดังนี้

    sudo apt-get update
    
  2. เรียกใช้คำสั่งต่อไปนี้เพื่อติดตั้ง Launcher ของที่เก็บ

    sudo apt-get install repo
    

    Repo Launcher มีสคริปต์ Python ที่เริ่มต้นการชำระเงินและดาวน์โหลดเครื่องมือ Repo แบบเต็ม

    หากทำสำเร็จ ให้ข้ามไปยังขั้นตอนที่ 4

  3. (ไม่บังคับ) ติดตั้ง 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
    

    คำสั่ง 3 รายการแรกจะตั้งค่าไฟล์ชั่วคราว ดาวน์โหลดที่เก็บไปยังไฟล์ และตรวจสอบว่าคีย์ที่ระบุตรงกับคีย์ที่ต้องใช้ หากคำสั่งเหล่านี้สำเร็จ คำสั่งสุดท้ายจะติดตั้ง Launcher ของที่เก็บ

  4. ยืนยันเวอร์ชัน Launcher ของที่เก็บด้วยคำสั่งต่อไปนี้

    repo version
    

    เอาต์พุตควรระบุเวอร์ชัน 2.5 ขึ้นไป ตัวอย่างเช่น

    repo launcher version 2.40

ตั้งค่าไดเรกทอรีเอาต์พุตสำรอง

โดยค่าเริ่มต้น เอาต์พุตของแต่ละบิลด์จะจัดเก็บอยู่ในไดเรกทอรีย่อย out/ ของโครงสร้างแหล่งที่มาที่ตรงกัน คุณลบล้างไดเรกทอรีนี้ได้โดยการส่งออกตัวแปรสภาพแวดล้อม OUT_DIR เช่น หากต้องการจัดเก็บเอาต์พุตในไดรฟ์อื่น ให้ชี้ OUT_DIR ไปยังไดรฟ์ดังกล่าวโดยทำดังนี้

export OUT_DIR=my_other_drive

สิ่งต่อไปที่ควรทำ