เริิ่มจากสิ่งที่ต้องการ ท่านต้องใช Linux ในการ build ครับ ซึ่งตอนที่ build นี้ผมใช้ Ubuntu 14.04 ครับ
จากนั้นเราทำการเปิด Terminal ของ Linux ขึ้นมา (กด ctrl+alt+t)
สร้างโฟลเดอร์ใหม่สำหรับเก็บโค้ดของ CM11 ด้วยคำสั่ง
mkdir cm11ต่อไปทำการติดตั้งซอฟแวร์ที่ต้องใช้ในการ build ด้วยคำสั่ง
sudo apt-get install bison build-essential curl flex \
g++-multilib gcc-multilib git-core gnupg gperf \
lib32ncurses5-dev lib32readline-gplv2-dev lib32z1-dev \
libesd0-dev libncurses5-dev libsdl1.2-dev \
libwxgtk2.8-dev libxml2 libxml2-utils lzop \
openjdk-6-jdk openjdk-6-jre pngcrush schedtool \
squashfs-tools xsltproc zip zlib1g-dev
ระบบจะถามพาสเวิร์ดในการติดตั้ง ไฟล์ไม่ต้องแปลกใจนะครับ กรอกพาสเวิร์ดแล้วนั่งรอเลย
จากนั้นเราย้ายตัวเราเข้าไปในโฟลเดอร์ cm11 ด้วยคำสั่ง
cd cm11
หลังจากนั้นทำการติดตั้ง repo ด้วยคำสั่ง
mkdir ~/bin
PATH=~/bin:$PATH
cd ~/bin
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
ระบุตำแหน่งของ CM11 บนระบบ git ด้วยคำสั่ง
repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
ดาวน์โหลดโค้ดจากระบบ git ด้วยคำสั่ง
(ขั้นตอนนี้อาจใช้เวลาประมาณ 12 ชม. แนะนำให้นอนสักงีบครับ)
repo sync
พอเสร็จ เข้ามาที่ โฟลเดอร์ cm11 ผ่าน file manager จะเห็นโฟล์เดอร์ขึ้นมาเต็ม ให้กด ctrl+h จะเห็นโฟลเดอร์โผล่ขึ้นมาชื่อ .repo ให้เข้าไปในโฟลเดอร์ .repo สร้างโฟลเดอร์ชื่อ local_manifests ในโฟลเดอร์ local_manifests สร้างไฟล์ชื่อ local_manifest.xml แล้วเพิ่มบรรทัดใน local_manifest.xml ตามนี้
<manifest>
<!-- D855 -->
<project path="device/lge/d855" name="invisiblek/android_device_lge_d855" remote="github" revision="cm-11.0" />
<project path="device/lge/g3-common" name="invisiblek/android_device_lge_g3-common" remote="github" revision="cm-11.0" />
<project path="kernel/lge/g3" name="invisiblek/android_kernel_lge_g3" remote="github" revision="cm-11.0" />
<project path="vendor/lge" name="invisiblek/proprietary_vendor_lge" remote="github" revision="cm-11.0" />
<!-- CyanogenMod -->
<project path="device/qcom/common" name="CyanogenMod/android_device_qcom_common" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/display-caf-new" name="CyanogenMod/android_hardware_qcom_display-caf-new" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/media-caf-new" name="CyanogenMod/android_hardware_qcom_media-caf-new" remote="github" revision="cm-11.0" />
</manifest>
ดาวน์โหลดโค้ดเพิ่มเติมอีกรอบ (ขั้นตอนนี้อาจใช้เวลาประมาณ 2 ชม. เร็วกว่าเดิม)
repo sync
cd vendor/cm
. get-prebuilts
croot
cd ..
cd ..
หลังจากนั้นเราก็เริ่ม build ได้แล้วด้วยคำสั่ง
(ขั้นตอนนี้ใช้เวลาประมาณ 3 ชม.)
(ขั้นตอนนี้ใช้เวลาประมาณ 3 ชม.)
. build/envsetup.sh
breakfast d855
brunch d855
หลังจากเสร็จเราจะพบไฟล์zip สำหรับ flash อยู่ที่
/cm11/out/target/product/d855
โหลด ไฟล์ open_bump ได้จากที่นี่ https://github.com/CyboLabs/Open_Bump
/cm11/out/target/product/d855
โหลด ไฟล์ open_bump ได้จากที่นี่ https://github.com/CyboLabs/Open_Bump
ให้ทำการแกะ boot.img ใน zip ออกมา แล้วนำ open_bump.py ที่ได้มาวางในโฟลเดอร์เดียวกัน แล้วสั่ง python open_bump boot.img
python open_bump boot.img
จะมีไฟล์ชื่อ boot_bumped.img ออกมา ให้เปลี่ยนชื่อกลับเป็น boot.img แล้วยัดกลับใส่ในไฟล์ zip ของ CM11 ที่จะเอาไปแฟลช
แค่นี้เราก็จะ build rom สำหรับ CM11 ของ LG G3 D855 ใช้เองได้แล้ว ขอให้สนุกครับ
// ถ้าว่างๆจะมาใส่รูปเพิ่มอธิบายประกอบ
แค่นี้เราก็จะ build rom สำหรับ CM11 ของ LG G3 D855 ใช้เองได้แล้ว ขอให้สนุกครับ
// ถ้าว่างๆจะมาใส่รูปเพิ่มอธิบายประกอบ