OS: Android - Build CyanogenMod
Persiapan
Buang openjdk
sudo apt-get purge openjdk*
Install oracle java6
sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java7-installer y
Install ia32(?) Tampaknya ini tidak di perlukan & hanya dibutuhkan di Ubuntu Mint
sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install ia32-libs sudo apt-get install ia32-libs y
Download & Extract
mkdir -p ~/android wget http://dl.google.com/android/adt/adt-bundle-linux-x86_64-20130729.zip wget http://dl.google.com/android/adt/22.6.2/adt-bundle-linux-x86_64-20140321.zip wget http://enos.itcollege.ee/~jpoial/allalaadimised/AndroidSDK/adt-bundle-linux-x86_64-20140702.zip
Extrak di
cp adt-bundle-linux-x86_64-20140702.zip ~ cd ~ rm -Rf ~/android/* unzip adt-bundle-linux-x86_64-20140702.zip mv adt-bundle-linux-x86_64-20140702/* ~/android cd ~/android/sdk/tools/ ./android sdk
Instalasi aplikasi pendukung
sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev \ libesd0-dev libwxgtk2.8-dev squashfs-tools build-essential zip curl \ libncurses5-dev zlib1g-dev pngcrush schedtool libxml2 libxml2-utils \ xsltproc g++-multilib lib32z1-dev lib32ncurses5-dev \ lib32readline-gplv2-dev gcc-multilib y
sudo apt-get install android-tools-adb sudo apt-get install android-tools-fastboot
Siapkan perintah repo
mkdir -p ~/bin mkdir -p ~/android-cyanogenmod
curl http://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo chmod a+x ~/bin/repo
Edit bashrc
gedit ~/.bashrc export PATH=${PATH}:~/bin export PATH=${PATH}:~/android/sdk/adt-bundle/sdk/tools export PATH=${PATH}:~/android/sdk/adt-bundle/sdk/platform-tools
Set identitas kita
git config --global user.email "username@mail.com" git config --global user.name "Nama Anda"
Siapkan Folder Source
repo sync ke folder source
cd ~/android-cyanogenmod/ repo init -u git://github.com/CyanogenMod/android.git -b cm-10.2 repo sync repo sync --force-sync (kalau mau memaksa)
atau
cd ~/android-cyanogenmod/ repo init -u git://github.com/CyanogenMod/android.git -b cm-10.1 repo sync repo sync --force-sync (kalau mau memaksa)
atau
cd ~/android-cyanogenmod/ repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0 repo sync repo sync --force-sync (kalau mau memaksa)
atau
cd ~/android-cyanogenmod/ repo init -u https://github.com/CyanogenMod/android -b cm-12.0 repo sync repo sync --force-sync (kalau mau memaksa)
Clean
Jika kita perlu membersihkan / clean build directory dapat menggunakan perintah
cd ~/android-cyanogenmod/ make clean
Build
cd ~ vi android-cyanogenmod/.repo/local_manifests/roomservice.xml
<manifest> <project name="TheMuppets/proprietary_vendor_lge.git" path="vendor/lge" remote="github" revision="cm-11.0"/> </manifest>
Edit roomservice.xml tampaknya tidak perlu dilakukan untuk CM 11.0.
mako
cd ~/android-cyanogenmod repo sync ~/android-cyanogenmod/vendor/cm/get-prebuilts . build/envsetup.sh brunch mako
LG Optimus G Pro
cd ~/android-cyanogenmod repo sync ~/android-cyanogenmod/vendor/cm/get-prebuilts cd ~/android-cyanogenmod . build/envsetup.sh brunch e980
versi e980 bisa untuk LG F240K tapi suara tidak keluar. Versi LG F240K yang tidak pernah di release ke publik.
LG Optimus L7
PERCOBAAN
cd ~/android-cyanogenmod repo sync ~/android-cyanogenmod/vendor/cm/get-prebuilts . build/envsetup.sh brunch p700
LG Optimus L7 II
PERCOBAAN
cd ~/android-cyanogenmod repo sync ~/android-cyanogenmod/vendor/cm/get-prebuilts . build/envsetup.sh brunch p713 breakfast p713
Jika Berhasil
Jika berhasil compile akan tampak seperti di bawah ini
LG Optimus G Pro
fstab_version = (int) 2 mkbootimg_args = (str) --ramdisk_offset 0x02000000 multistage_support = (str) 1 ota_script_path = (str) ./build/tools/releasetools/ota_from_target_files override_device = (str) e986,e980,geefhd,e988,gkatt recovery_api_version = (int) 2 recovery_size = (int) 23068672 selinux_fc = (str) /tmp/targetfiles-NDmpFb/BOOT/RAMDISK/file_contexts system_size = (int) 880803840 tool_extensions = (str) device/lge/gproj-common/loki update_rename_support = (str) 1 use_set_metadata = (str) 1 userdata_size = (int) 6189744128 using device-specific extensions in device/lge/gproj-common/loki building image from target_files RECOVERY... running: mkbootfs -f /tmp/targetfiles-NDmpFb/META/recovery_filesystem_config.txt /tmp/targetfiles-NDmpFb/RECOVERY/RAMDISK running: minigzip running: mkbootimg --kernel /tmp/targetfiles-NDmpFb/RECOVERY/kernel --cmdline vmalloc=600M console=ttyHSL0,115200,n8 lpj=67677 user_debug=31 msm_rtb.filter=0x0 ehci-hcd.park=3 coresight-etm.boot_enable=0 androidboot.hardware=geefhd --base 0x80200000 --pagesize 2048 --ramdisk_offset 0x02000000 --ramdisk /tmp/tmpFBkCjN --output /tmp/tmpk7MzE8 building image from target_files BOOT... running: mkbootfs -f /tmp/targetfiles-NDmpFb/META/boot_filesystem_config.txt /tmp/targetfiles-NDmpFb/BOOT/RAMDISK running: minigzip running: mkbootimg --kernel /tmp/targetfiles-NDmpFb/BOOT/kernel --cmdline vmalloc=600M console=ttyHSL0,115200,n8 lpj=67677 user_debug=31 msm_rtb.filter=0x0 ehci-hcd.park=3 coresight-etm.boot_enable=0 androidboot.hardware=geefhd --base 0x80200000 --pagesize 2048 --ramdisk_offset 0x02000000 --ramdisk /tmp/tmp_3GqB_ --output /tmp/tmpJL_WHM running: imgdiff -b /tmp/targetfiles-NDmpFb/SYSTEM/etc/recovery-resource.dat /tmp/tmpIcldsF /tmp/tmpPUSwrT /tmp/tmpy4N9YX boot size (6991872) is 30.31% of limit (23068672) running: openssl pkcs8 -in build/target/product/security/testkey.pk8 -inform DER -nocrypt running: java -Xmx2048m -jar /home/onno/android-cyanogenmod/out/host/linux-x86/framework/signapk.jar -w build/target/product/security/testkey.x509.pem build/target/product/security/testkey.pk8 /tmp/tmpvJfhFa /home/onno/android-cyanogenmod/out/target/product/e980/cm_e980-ota-d3b5d992b5.zip
done.
Package Complete: /home/onno/android-cyanogenmod/out/target/product/e980/cm-11-20151008-UNOFFICIAL-e980.zip
Referensi
- http://forum.xda-developers.com/showthread.php?t=2404841
- http://bernaerts.dyndns.org/linux/74-ubuntu/245-ubuntu-precise-install-android-sdk
- http://wiki.cyanogenmod.org/w/Build_for_blade
Pranala Menarik
- Android
- Pemrogramman Android
- OS: Android - Mempersiapkan Development Environment
- OS: Android - Memeriksa Spesifikasi Handphone yang digunakan
- OS: Android - Membuat Mirror Source
- OS: Android - Download
- OS: Android - Membuat Folder untuk Bekerja
- OS: Android - Mirror Source
- OS: Android - Mirror Source AOKP
- OS: Android - Mirror Source CyanogenMod
- OS: Android - Build
- OS: Android - Build CyanogenMod
- OS: Android - Build AOSP