LineageOS ตัวต่อยอดจาก CyanogenMod เป็น custom ROM ยอดนิยมที่สุดสำหรับ Android ถูก port ไปยังรุ่นโทรศัพท์มากกว่า 200 รุ่น และมีฟีเจอร์มากกว่าประสบการณ์ stock Android มาก
อย่างไรก็ตาม แม้จะมีอุปกรณ์มากที่มี LineageOS ports แต่อุปกรณ์ที่ไม่มียังเยอะกว่า ในคำแนะนำ快速และง่ายของ Appual นี้ เราจะแสดงวิธี build LineageOS ในสภาพแวดล้อม Windows 10 โปรดทราบว่านี้จะไม่ build LineageOS ROM ที่เข้ากันได้กับอุปกรณ์ของคุณทันที คำแนะนำนี้เพื่อ setup และรันบน Windows 10 สำหรับ build LineageOS จาก Git repo อย่างเป็นทางการ
โปรดทราบว่าควรคุ้นเคยกับ Linux command terminals และการ build Android ROMs - นี้ไม่ใช่คำแนะนำสำหรับผู้เริ่มต้น ควรอ่านคำแนะนำของ Appual เกี่ยวกับการ build custom ROMs จาก AOSP หากไม่เคยพยายาม build ROM มาก่อน (ลิงก์ด้านล่าง)
หากสนใจ custom ROM building และ DIY Android tutorials อื่นๆ ควรดูคำแนะนำ Appual อื่นๆ:
- วิธี DIY Port TWRP สำหรับ Android
- วิธีปรับธีม Android System UI ด้วยตนเอง
- วิธี Build Custom ROM จาก AOSP | Pt. 2
ข้อกำหนดเบื้องต้น:
- Windows 10 (64-bit) (แนะนำติดตั้งบน SSD)
- อย่างน้อย 16GB RAM (การ compile ใช้ทรัพยากรมาก!)
สิ่งที่เราจะทำคือตั้งค่า Windows Subsystem for Linux (WSL) สำหรับ build environment นี้ง่ายมากแต่มักถูกมองข้าม เพราะส่วนใหญ่ของสิ่งที่เราต้องการมีใน Microsoft Store

ขั้นแรก เปิด Microsoft Store ค้นหา Ubuntu 18.04 และติดตั้งแอพ
เปิดแอพ Ubuntu 18.04 ผ่าน setup wizard เริ่มต้น
เปิด Ubuntu terminal ติดตั้งแพ็กเกจต่อไปนี้:
sudo apt install android-sdk-platform-tools bc build-essential ccache curl g++-multilib gcc-multilib git gnupg gperf imagemagick lib32ncurses5-dev lib32readline-dev lib32z1-dev liblz4-tool libncurses5-dev libsdl1.2-dev libssl-dev libwxgtk3.0-dev libxml2 libxml2-utils lzop m4 openjdk-8-jdk pngcrush repo rsync schedtool squashfs-tools xsltproc zip zlib1g-dev
สร้างไดเรกทอรีใหม่สำหรับ source code และเข้าไป:
mkdir -p ~/android/lineage && cd android/lineage
ตอนนี้ init LineageOS source repo:
repo init -u https://github.com/LineageOS/android.git -b lineage-15.1
เพิ่มโค้ดนี้ลงใน .repo/local_manifests/roomservice.xml (หากไฟล์ไม่มี สร้างใหม่ได้)
<project name="TheMuppets/proprietary_vendor_your device brand" path="vendor/your device brand" remote="github" />
ดาวน์โหลด source code:
repo sync
เป็น optional แตแนะนำเปิด caching เพื่อเร่ง build ผ่าน "ccache"
เพิ่มบรรทัดนี้ใน ~/.bashrc file:
Export USE_CCACHE=1
ระบุพื้นที่ดิสก์สูงสุดที่ ccache ใช้ได้:
Ccache -M 50G
แทนที่ "50G" ด้วยค่าที่ต้องการ - ตรงกับ gigabytes ของ cache ที่จัดสรร หาก build สำหรับอุปกรณ์เดียว ใช้ 25G – 50G แต่หาก build หลายอุปกรณ์ที่ ไม่ใช้ kernel source เดียวกัน ควรเพิ่มเป็น 75 – 100G ในทุกกรณี ccache จะลดเวลา build ลงมาก
ต่อไป cherrypick commit นี้:
source build/envsetup.sh && repopick -t wsl-compile
เตรียม device-specific code:
breakfast your device codename
Make 64-bit bison และ ijar:
make bison && make ijar
ตั้งค่า BISON_EXEC ให้รัน 64-bit bison และ IJAR_EXEC ให้รัน adapted ijar:
export BISON_EXEC=~/android/lineage/out/host/linux-x86/bin/bison export IJAR_EXEC=~/android/lineage/out/host/linux-x86/bin/ijar
(เพิ่มคำสั่งใน ~/.bashrc หากไม่อยากรันทุกครั้งที่เปิด command line ใหม่)
ตอนนี้สามารถเริ่ม build ได้!
brunch your device codename
สำหรับ build ในอนาคต ต้องทำซ้ำขั้นตอนเพิ่ม .repo/local_manifests เปิด ccache และตั้ง BISON_EXEC และ adapted IJAR
ต้อง make bison && make ijar ทุกครั้งที่ flush directory
หมายเหตุสุดท้าย:
- อย่า เพิ่ม/แก้ไข Linux files จาก Windows ไฟล์อาจ corrupt ใน bash ทำภายใน Linux subsystem
- อย่า ใช้ mnt ดาวน์โหลด source code ไป drive อื่นแล้วปฏิบัติตามคำแนะนำนี้ ควรดาวน์โหลด source code ไปที่โฟลเดอร์ ภายใน Linux subsystem เท่านั้น!