Hello guys, I'm here to explain you how to compile an updated MIUI rom using kowakx's patchrom tree. I decided to do this guide to give everyone a possibility to enjoy a bugless MIUI rom (exept for dual sim RIL). I don't upload a precompiled version because over time the rom become out of date anyway also patchrom tree need updates but i think that there will be few updates by the MIUI team since the release of MIUI 8.
But now is the time to explain you how to compile the rom
1. You have to work on a linux environment so you can use ubuntu installed on your pc or on a virtual machine (you can follow this guide. You have to make an hard disk of 40 GB, for me sufficed 30 GB but I won't answer to any question on expanding a virtual hard disk).
2. Follow this guide from "STEP-1: Preparing build environment" to "repo sync" command (if you run those commands like they are written all files will be stored to /root directory so if you want to see all files on desktop you have to substitute all "~/" with the directory of your desktop "/home/xxxx/Desktop" where "xxxx" is the username that you insterted during the configuration of ubuntu or of the virtual machine with ubuntu). If the following command give you an error skip it
Code:
sudo apt-get install bison build-essential curl flex git git-core gnupg gperf libesd0-dev liblz4-tool libncurses5-dev libsdl1.2-dev libwxgtk2.8-dev libxml2 libxml2-utils lzop openjdk-7-jdk openjdk-7-jre pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev unzip lib32readline-gplv2-dev lib32z1-dev make python-networkx zlib1g-dev:i386 phablet-tools
3. Enter the following commands
Code:
sudo apt-get install git
Code:
cd /home/xxxx/Desktop
where "xxxx" is the username that you insterted during the configuration of ubuntu or of the virtual machine with ubuntu
Code:
git clone https://github.com/ElKowak/patchrom_condor.git
Code:
sudo chmod 777 /home/xxxx/Desktop/patchrom_condor
where "xxxx" is the username that you insterted during the configuration of ubuntu or of the virtual machine with ubuntu
4. Enter the folder created on your desktop, open "customize_framework.sh" and replace "cp -rf ../android/Editor/* $BUILD_OUT/framework/smali/android/widget/" with "cp -rf $BUILD_OUT/framework_miui/smali/android/widget/Editor* $BUILD_OUT/framework/smali/android/widget/" (this is an important step to solve a problem in the rom. The solution is provided by kowax). Save.
5. Download this rom
6. Move the downloaded rom into "/home/xxxx/Desktop/patchrom_condor"
where "xxxx" is the username that you insterted during the configuration of ubuntu or of the virtual machine with ubuntu
7. Run these commands
Code:
cd ~/patchrom
(remember what I said at the beginning of this guide about "~/")
Code:
source build/envsetup.sh
Code:
cd /home/xxxx/Desktop/patchrom_condor
where "xxxx" is the username that you insterted during the configuration of ubuntu or of the virtual machine with ubuntu
Code:
make fullota
Now the compilation is started. If the process stopped during the compilation of ThemeManager.apk run the following command
Code:
/home/xxxx/Desktop/patchrom/tools/apktool --quiet b -a /home/xxxx/Desktop/patchrom/tools/aapt out/ThemeManager -o out/ThemeManager.apk
where "xxxx" is the username that you insterted during the configuration of ubuntu or of the virtual machine with ubuntu
then run again "make fullota"
If you have to shutdown the pc or to close the terminal you have to run again the commands of step 7
8. The output rom is in "/home/xxxx/Desktop/patchrom_condor/out" and is named "fullota.zip". At this point the rom have little problems but to solve them you have to put inside the output rom in "/system/media/theme/default" 2 files that are attached below in "Theme.zip" file ("com.miui.home" and "framework-miui-res"). Right now the rom don't have a camera...if you want the MIUI camera put "Camera2.apk" attached below inside the zip in "/system/app"
9. Now you can enjoy this wonderful rom
If i missed something in this guide and you have to install some additional packages the terminal will tell you.
I having a dual sim device xt1022 so if I compile.this ROM can at leat one sim work I only need 1 sim slot...
ak_bagade said:
I having a dual sim device xt1022 so if I compile.this ROM can at leat one sim work I only need 1 sim slot...
Click to expand...
Click to collapse
I don't think that work in this way...but you can try with my ported rom...because in that work only single sim RIL...if it work like you say you can try to follow my guide
Sir, unable to pass the step which says-
sudo apt-get install bison build-essential curl flex git git-core gnupg gperf libesd0-dev liblz4-tool libncurses5-dev libsdl1.2-dev libwxgtk2.8-dev libxml2 libxml2-utils lzop openjdk-7-jdk openjdk-7-jre pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev unzip lib32readline-gplv2-dev lib32z1-dev make python-networkx zlib1g-dev:i386 phablet-tools
As i run the command it displays some message
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Could you help me please???
Sent from my SM-G800H using Tapatalk
simranjitsingh said:
Sir, unable to pass the step which says-
sudo apt-get install bison build-essential curl flex git git-core gnupg gperf libesd0-dev liblz4-tool libncurses5-dev libsdl1.2-dev libwxgtk2.8-dev libxml2 libxml2-utils lzop openjdk-7-jdk openjdk-7-jre pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev unzip lib32readline-gplv2-dev lib32z1-dev make python-networkx zlib1g-dev:i386 phablet-tools
As i run the command it displays some message
Could you help me please???
Sent from my SM-G800H using Tapatalk
Click to expand...
Click to collapse
Try this command:
sudo apt-get install bison build-essential curl flex git git-core gnupg gperf libesd0-dev liblz4-tool libncurses5-dev libsdl1.2-dev libxml2 libxml2-utils lzop pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev unzip lib32z1-dev make python-networkx zlib1g-dev:i386 phablet-tools
Sir, the last line shows error
I am currently on 14.04 LTS could upgrading to 16.04 solve this issue????
Sent from my SM-G800H using Tapatalk
simranjitsingh said:
Sir, the last line shows error
I am currently on 14.04 LTS could upgrading to 16.04 solve this issue????
Sent from my SM-G800H using Tapatalk
Click to expand...
Click to collapse
I think that that is the problem...i'm using 16.04
Simomaster1 said:
I think that that is the problem...i'm using 16.04
Click to expand...
Click to collapse
Okay thank you Sir. I am upgrading right now and i'll let you know. Thanks for your help
Sent from my SM-G800H using Tapatalk
simranjitsingh said:
Okay thank you Sir. I am upgrading right now and i'll let you know. Thanks for your help
Sent from my SM-G800H using Tapatalk
Click to expand...
Click to collapse
Your welcomeI can also change something in the guide if i see that there are some problems
Simomaster1 said:
Your welcomeI can also change something in the guide if i see that there are some problems
Click to expand...
Click to collapse
Umh...... Actually sir i am making it for Grand 2. I suggest you to make it into a guide which other people could use for their devices too.
Otherwise There's no problem in the guide its described perfectly. But when you have made it already for Moto E then why would someone make it again???? I think someone would read your guide if he/she wanna make it for a device that doesn't have it.
So i believe that it could be a lot better if the guide was valid for all devices.
Thank you!!!!!
Sent from my SM-G800H using Tapatalk
simranjitsingh said:
Umh...... Actually sir i am making it for Grand 2. I suggest you to make it into a guide which other people could use for their devices too.
Otherwise There's no problem in the guide its described perfectly. But when you have made it already for Moto E then why would someone make it again???? I think someone would read your guide if he/she wanna make it for a device that doesn't have it.
So i believe that it could be a lot better if the guide was valid for all devices.
Thank you!!!!!
Sent from my SM-G800H using Tapatalk
Click to expand...
Click to collapse
You're right but in this guide there are link that are only for Moto E
Simomaster1 said:
You're right but in this guide there are link that are only for Moto E
Click to expand...
Click to collapse
Yeah i understand. Maybe you could make a guide for all devices too??? Since Miui 8 released recently it'd be great to have a PatchROM Guide for that. If you feel like making
simranjitsingh said:
Yeah i understand. Maybe you could make a guide for all devices too??? Since Miui 8 released recently it'd be great to have a PatchROM Guide for that. If you feel like making
Click to expand...
Click to collapse
I will consider this...but all devices must have a ready patchrom tree on github
Simomaster1 said:
I will consider this...but all devices must have a ready patchrom tree on github
Click to expand...
Click to collapse
Yeah sounds great. Maybe later you could make as Miui 8 is too new and not too many devices have it yet.
Sent from my SM-G800H using Tapatalk
simranjitsingh said:
Yeah sounds great. Maybe later you could make as Miui 8 is too new and not too many devices have it yet.
Sent from my SM-G800H using Tapatalk
Click to expand...
Click to collapse
Exactly
https://www.androidfilehost.com/?fid=313042859668276515 @AndersonMends this ROM is stable??
Any bugs??
Simomaster1 said:
Exactly
Click to expand...
Click to collapse
Congrats!!!! Moto E gets the very beautiful Miui 8!!!!!
Will you make a guide on that????
Sent from my SM-G800H using Tapatalk
simranjitsingh said:
Congrats!!!! Moto E gets the very beautiful Miui 8!!!!!
Will you make a guide on that????
Sent from my SM-G800H using Tapatalk
Click to expand...
Click to collapse
I don't think so...miui 8 is alredy compiled
Related
This is strictly just a reference guide/tutorial! If you cannot simply follow directions and copy/paste, I'm not going to help you! This is idiot-proof.
Build Environment
Operating system -- Tested on Ubuntu 10.04 (64bit)
Terminal
Decent hardware (minimum of at least a dual core CPU and 4 GB of RAM)
Optimally have an SSD (standard mechanical drives work as well but slow down the process drastically)
Must have required packages for building installed, I will list them further down
Required Packages
Simply copy and paste this in a terminal window:
Code:
sudo apt-get install curl git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3-multilib
Let that install and then proceed.
Getting the Source
Make required directories
Obtain repo binary
Add repo binary to your path
Give repo binary proper permissions
Initialize empty repo
Sync repo
Grab device tree and vendor tree which are not included in the AOKP manifest
Add Mecha to the vendor setup
Alright, so now we're getting there. I have outlined the basics of what we're about to do and broke them down as I know them. This is all pretty much going to be copy/paste so it'll be fairly difficult to screw this up
Copy/paste:
Make directory for repo binary
Code:
mkdir ~/bin
Add directory for repo binary to your path
Code:
PATH=~/bin:$PATH
Download repo binary and place it in the proper directory
Code:
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
Give the repo binary the proper permissions
Code:
chmod a+x ~/bin/repo
Create directory for where the AOKP repo will be stored and synced
Code:
mkdir ~/aokp
Move to our new AOKP directory
Code:
cd ~/aokp
Initialize the AOKP repo and download the manifest
Code:
repo init -u git://github.com/AOKP/platform_manifest.git -b master
Sync AOKP source
Code:
repo sync -jX
X == Number of cores your CPU has
Start the build
This is probably the EASIEST part of all, simply copy/paste this command and walk away!
Code:
. build/envsetup.sh && lunch aokp_tenderloin-userdebug && make otapackage -jX
Where X == cores per CPU again.
Syncing the repo is dependent upon your Internet connection. It can take anywhere from 30 minutes to several hours to fully sync. Same thing goes for build times. Don't expect this to be short. If you have patience and have no build errors, you'll end up with a flashable zip in ~/aokp/out/target/product/tenderloin! Happy crack-flashing!
Thats nice, too bad i sold my i5 laptop recently, and the Internet speed is awful herr , but thanks dude
Sent from my HTC Desire HD using xda premium
Will it compile on a 32bit vm? Not worried about the time.
nomadman said:
Will it compile on a 32bit vm? Not worried about the time.
Click to expand...
Click to collapse
ICS requires a 64bit linux install afaik
http://groups.google.com/group/android-building/browse_thread/thread/168d757c41cdaf3d?pli=1
Jedipottsy said:
ICS requires a 64bit linux install afaik
http://groups.google.com/group/android-building/browse_thread/thread/168d757c41cdaf3d?pli=1
Click to expand...
Click to collapse
I don't think that's true, I've compiled an ICS ROM on a 32-bit machine. I think it should work.
Sent from my ZTE-BLADE using XDA App
What's advantage of using AOKP if they forked from CyanogenMod? It would be same for HP Touchpad, maybe it would be even behind in update until AKOP merge new commits from CyanogenMod git.
bhanvadia said:
What's advantage of using AOKP if they forked from CyanogenMod? It would be same for HP Touchpad, maybe it would be even behind in update until AKOP merge new commits from CyanogenMod git.
Click to expand...
Click to collapse
Dude, don't start this crap again. If you got beef, take it up via PM or somewhere else that isn't in the thread.
bhanvadia said:
What's advantage of using AOKP if they forked from CyanogenMod? It would be same for HP Touchpad, maybe it would be even behind in update until AKOP merge new commits from CyanogenMod git.
Click to expand...
Click to collapse
There are lots of advantages in using AOKP. Rom Control has so many tweaks. It's really a great build. Only certain things are forked (which you will find in every AOSP variant)
f_padia said:
I don't think that's true, I've compiled an ICS ROM on a 32-bit machine. I think it should work.
Sent from my ZTE-BLADE using XDA App
Click to expand...
Click to collapse
I would love to know how...I tried and had zero success. Switched to 64-bit and I'm good to go.
TMartin said:
I would love to know how...I tried and had zero success. Switched to 64-bit and I'm good to go.
Click to expand...
Click to collapse
Id try if I knew how lol. Don't have patience sometimes, haha. Maybe I'll try it since I got a 32-bit myself.
Sent from my Galaxy Nexus
I get the following:
[email protected]:~$ sudo apt-get install curl git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3-multilib
[sudo] password for user:
Reading package lists... Done
Building dependency tree
Reading state information... Done
gnupg is already the newest version.
zip is already the newest version.
Package sun-java6-jdk is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package sun-java6-jdk has no installation candidate
[email protected]:~$
worm9110 said:
I get the following:
[email protected]:~$ sudo apt-get install curl git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3-multilib
[sudo] password for user:
Reading package lists... Done
Building dependency tree
Reading state information... Done
gnupg is already the newest version.
zip is already the newest version.
Package sun-java6-jdk is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package sun-java6-jdk has no installation candidate
[email protected]:~$
Click to expand...
Click to collapse
It is in the partner repo so you need to make sure it is enabled.
If you open Synaptic and go to Tools/Repositories, then Other Software you should be able to check off Canonical Partners and Canonical Partners (Source Code). Reload, close Synaptic, and try again.
To anyone on the Ubuntu 12.04 nightlies, don't even bother trying to compile this, let alone install the dependencies. Build errors up the arse, repo sync errors, and a myriad of other hassles that just aren't worth it. A fresh install of 11.10 fixed everything for me, even following the same exact steps I was doing on 12.04.
Sent from my SCH-I500 using XDA App
Rather than do this in a VM, I'd like to create a second partition on my desktop and just run Ubuntu native.
Any recommendations for partition size? Whenever I create an Ubuntu VM, VirtualBox recommends 8GB, which I generally increase to 24GB (4GB for swap, 4GB for /home, and 16GB for / mounts) but as I've never tried to build from source, I have no idea what the space requirements are.
Please advise.
Went ahead and built it in a VirtualBox VM, on top of an SSD, with the device settings in VBox set to reveal to the guest OS that the host HDD is an SDD. Seems very fast. I configured my VM with a Dynamic drive, and set the max space to 64GB (doubt I'll ever come close to that) with 4GB RAM, 4 virtual CPU cores, and 4GB of swap space.
The current size of the virtual disk after my first build of the tenderloin source is 33GB. I'd say if you were going to set up an actual hard drive partition that 40GB would be a minimum, and probably closer to 64GB would be wise depending on if you want to build two versions simultaneously.
For those who struggle with the initial setup, if you're using Ubuntu 11.10, you won't be able to add sun-java6-jdk via apt-get simply by adding Canonical's partner repos. Sun is no longer making the package available via the partner repo's.
Instead, open a terminal window and do the following:
Code:
cd ~/
wget https://raw.github.com/flexiondotorg/oab-java6/master/oab-java6.sh -O oab-java6.sh
chmod +x oab-java6.sh
sudo ./oab-java6.sh
This downloads a shell script from flexion.org, which is the group that used to provide the sun-java6-jdk packages in Canonical's partner repo's before Canonical decided to block them for what they view as violating copyright law. The script is just a wrapper for steps you could take manually, and if you're curious what it does, before the last line above, you can always do the following to view the contents of the script:
Code:
cat oab-java6.sh
Obviously, use of this script presumes you've read and accepted Oracle's license terms, etc., found here:
http://www.oracle.com/technetwork/java/javase/terms/license/
Hopefully this helps some of our members who are getting stuck with the basics.
TMartin said:
I would love to know how...I tried and had zero success. Switched to 64-bit and I'm good to go.
Click to expand...
Click to collapse
I've been building on a 32-bit VM for some time. Pretty good guide here...
https://www.evernote.com/shard/s102...03022e318722/5b04667c8934a25489b86623805bfb31
I was able to successfully build the image. Can someone point me to how contributing back. How do i send files for review. How to revert back a file to original state if the modifications I made dont work.
If someone could point in the right direction , I would try to contribute something to the community.
suren21 said:
I was able to successfully build the image. Can someone point me to how contributing back. How do i send files for review. How to revert back a file to original state if the modifications I made dont work.
If someone could point in the right direction , I would try to contribute something to the community.
Click to expand...
Click to collapse
http://git-scm.com/documentation
worm9110 said:
I get the following:
[email protected]:~$ sudo apt-get install curl git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3-multilib
[sudo] password for user:
Reading package lists... Done
Building dependency tree
Reading state information... Done
gnupg is already the newest version.
zip is already the newest version.
Package sun-java6-jdk is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package sun-java6-jdk has no installation candidate
[email protected]:~$
Click to expand...
Click to collapse
I found this in another guide in the sensation forum for compiling cm9, seemed to work for me
sudo add-apt-repository ppa:ferramroberto/java
sudo apt-get update
sudo apt-get install sun-java6-jdk sun-java6-jre sun-java6-plugin
Noob question
I keep getting an error message, not sure how to fix it;
Code:
running: java -Xmx2048m -jar out/host/linux-x86/framework/signapk.jar -w build/target/product/security/testkey.x509.pem build/target/product/security/testkey.pk8 /tmp/tmpamHamk out/target/product/maguro/aokp_maguro-ota-eng.mandrew.zip
Could not create the Java virtual machine.
ERROR: signapk.jar failed: return code 1
make: *** [out/target/product/maguro/aokp_maguro-ota-eng.mandrew.zip] Error 1
I'm opening this thread as i myself came across certain problems during the compiling of Cyanogenmod7 for the ZTE Blade from Source. I'm not a developer of any sort and want to make this clear. I'm opening this thread in the General section as all can comment.
This thread may help people who want to make their own CM7 builds. This thread is based on Cyanogenmod's guide on compiling from source. I've added some extra commands for people who do not understand CM's guide very well as i didn't find it to be very transparent.
Firstly,this guide is written for the people who want to compile CM7 on a linux platform,especially Ubuntu as i'm writing this based on Ubuntu 11.10.
Secondly,this guide may not be perfect as i do not have extensive knowledge on Ubuntu. So,any recommendations will be highly appreciated.
Thirdly,thanks go to the entire CyanogenMod team without whom the blade wouldn't be what it is now. Also to Wbaw,for making the TPT procedure. And to all the Blade developers out there who're spending their precious time to help us.
Here we go..
Hardware Requirements:
- A minimum dual core pc, the more ram the better
- A working wifi connection or network connection
- Linux Operating System. Either 32-bit or 64-bit will work
Any time during the process if you need to type as Root,give the command,
Code:
sudo -i
A.Installing a few programs first.
The terminal is where we will be doing most work.
Open terminal and type the code under the given programs.
1.Python,rar,curl,git.
Code:
sudo apt-get install python rar curl git
2.Java
Setting up java is very important. You can download java from Ubuntu Software centre or through the terminal.
On Ubuntu's 10.10 and 11.10 variants,enabling the repository is important.
Code:
sudo add-apt-repository "deb http://archive.canonical.com/ maverick partner"
After that,type the following.
Code:
sudo apt-get update
You may want to repeat previous commands again. To do so you can simply type "!!".
After that,type,
Code:
sudo apt-get install sun-java6-jdk
Certain people may face the problem in the form of an error sayingackage is not available or has another installation candidate. If you get an error like this, add this and try again,
Code:
sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
Code:
sudo apt-get update
Code:
sudo apt-get install sun-java6-jdk
For us to compile Gingerbread,we need a Java version of "1.6.x"
To check the version,type,
Code:
java -version
We're done setting up Java.
3.Android SDK.
Download the Android SDK from here- http://developer.android.com/sdk/index.html
Extract it to your home folder.
Navigate to android-sdk-linux/tools and open "android" and run it in terminal.
Install the platform files. The most important ones that we need are the Android SDK Tools and The Android 2.3.3 Files.
B.Setting up UDEV.
Type,
Code:
sudo gedit /etc/udev/rules.d/11-android.rules
and paste the following after editing your user name in the code,
Code:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1353", MODE="0660", OWNER="<your user name>" #Normal
SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1351", MODE="0660", OWNER="<your user name>" #Debug
SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1354", MODE="0660", OWNER="<your user name>" #Recovery
Type the following to change permissions to read.
Code:
chmod 0644 /etc/udev/rules.d/11-android.rules
Any extra info regarding UDEV can be found here- http://wiki.cyanogenmod.com/wiki/Udev
We have setup UDEV.
C.Installing the build packages.
For 32bit and 64bit systems,
Code:
sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool
For 64bit systems only,
Code:
sudo apt-get install g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline-gplv2-dev gcc-multilib g++-multilib
D.Setting up some directories in the environment.
Type the following to create them,
Code:
mkdir -p ~/bin
Code:
mkdir -p ~/android/system
E.Installing the repositories.
Type the following to make executable the repo function.
Code:
curl https://raw.github.com/android/tools_repo/master/repo > ~/bin/repo
Code:
chmod a+x ~/bin/repo
You may need to reboot for the changes to take place.(Recommended)
To initialize the repositories,type the following (Note this will take very long and you will be asked for your name and email ID),
Code:
cd ~/android/system/
Code:
repo init -u git://github.com/CyanogenMod/android.git -b gingerbread --repo-url=git://github.com/android/tools_repo.git
Code:
repo sync
F.Copying of the proprietary files from a working Blade having Cyanogenmod7 installed on it.
Connect the device and ensure ADB is working.You can go here (http://wiki.cyanogenmod.com/wiki/ADB) if you have issues. Type the following for copying,
Code:
cd ~/android/system/device/zte/blade/
Code:
./extract-files.sh
G.Downloading of ROM Manager
Code:
~/android/system/vendor/cyanogen/get-rommanager
H.Building Cyanogenmod
Check for updates first,
Code:
cd ~/android/system/
Code:
repo sync
Configure your build and compile using,
Code:
. build/envsetup.sh && brunch blade
Copy your .zip file from ~/android/system/out/target/product/blade/update.cm-XXXXX-signed.zip to the root of the SD card.
Thats it,you're done.
You can flash the zip file from CWM or any other recovery or use an emulator.
You can also download Gapps and use that.
EDIT:I'm busy with my exams this whole month and maybe the next. So will try to update it and rectify any mistake ASAP. I haven't added the integration of the Eclipse ADT and will do so when i'm free again.
There is a guide on the CyanogenMod wiki here: http://wiki.cyanogenmod.com/index.php?title=Compile_CyanogenMod_for_Blade
wbaw said:
There is a guide on the CyanogenMod wiki here: http://wiki.cyanogenmod.com/index.php?title=Compile_CyanogenMod_for_Blade
Click to expand...
Click to collapse
I tried following the same and got stuck up on several occasions. It isn't very noob friendly. Thats's why i opened one here hoping it helps others like me.
Sent from my Blade using XDA app
The wiki guide seems perfect for me. It was written by & for technical people used to working with Linux though. Maybe you could help to make it more noob friendly.
As it's a wiki you should be able to create an account & submit changes if you want to make it better, although the site is really slow/down for me at the moment so I'm not sure what the rules are.
You can use apt-get install to install more than one package, you could combine all those apt-get install lines into one. Some people may also need to install more packages, the full list is on the wiki.
Also, if you have a multi-core cpu, you can make it compile a bit faster by using the -j option on brunch, -j2 for dual core, -j4 for quad core.
wbaw said:
The wiki guide seems perfect for me. It was written by & for technical people used to working with Linux though. Maybe you could help to make it more noob friendly.
As it's a wiki you should be able to create an account & submit changes if you want to make it better, although the site is really slow/down for me at the moment so I'm not sure what the rules are.
You can use apt-get install to install more than one package, you could combine all those apt-get install lines into one. Some people may also need to install more packages, the full list is on the wiki.
Also, if you have a multi-core cpu, you can make it compile a bit faster by using the -j option on brunch, -j2 for dual core, -j4 for quad core.
Click to expand...
Click to collapse
Ok. Thanks a lot. Will include the other packages and the -j option as soon as possible.
Edit:Have added the all in one apt command. Will add other packages tomorrow.
Sent from my Blade using XDA app
wbaw said:
Some people may also need to install more packages, the full list is on the wiki.
Click to expand...
Click to collapse
What packages are yet to be put here? I just saw the wiki. Except for the Eclipse IDE,i've put everything else here.
Sent from my Blade using XDA app
karthiknr said:
What packages are yet to be put here? I just saw the wiki. Except for the Eclipse IDE,i've put everything else here.
Sent from my Blade using XDA app
Click to expand...
Click to collapse
From the wiki...
For 32-bit & 64-bit systems:
git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool
For 64-bit only systems:
g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3-multilib
NOTE: gcc-4.3-multilib g++-4.3-multilib is no longer available for Ubuntu 11.04 64-bit, but should still build without issue.
NOTE: On Ubuntu 10.10, and variants, you need to enable the parter repository to install sun-java6-jdk:
add-apt-repository "deb http://archive.canonical.com/ maverick partner"
Click to expand...
Click to collapse
wbaw said:
From the wiki...
Click to expand...
Click to collapse
Its already there. The adding of the repository for java is under Java itself.
Sent from my Blade using XDA app
you still missed most of the required packages, fine if you already have them installed, but not everybody will.
wbaw said:
you still missed most of the required packages, fine if you already have them installed, but not everybody will.
Click to expand...
Click to collapse
It would be better for me to understand if you specified the packages.
I think only Eclipse is missing. Nothing else.
Sent from my Blade using XDA app
karthiknr said:
It would be better for me to understand if you specified the packages.
I think only Eclipse is missing. Nothing else.
Sent from my Blade using XDA app
Click to expand...
Click to collapse
I already did, here they are again...
For 32-bit & 64-bit systems:
git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool
For 64-bit only systems:
g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3-multilib
wbaw said:
I already did, here they are again...
For 32-bit & 64-bit systems:
git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool
For 64-bit only systems:
g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3-multilib
Click to expand...
Click to collapse
They're already there under the Building Packages heading.
Sent from my Blade using XDA app
wbaw said:
I already did, here they are again...
For 32-bit & 64-bit systems:
git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool
For 64-bit only systems:
g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3-multilib
Click to expand...
Click to collapse
He already has those listed, just later on in the post. They are in scrolling code boxes, so its not obvious they are all there at first. Might be better to put them at the start, and then you just install everything at once.
karthiknr said:
For 32bit and 64bit systems,
Code:
sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool
For 64bit systems only,
Code:
sudo apt-get install g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline-gplv2-dev gcc-multilib g++-multilib
Click to expand...
Click to collapse
Amphoras said:
He already has those listed, just later on in the post. They are in scrolling code boxes, so its not obvious they are all there at first. Might be better to put them at the start, and then you just install everything at once.
Click to expand...
Click to collapse
I listed them later as they won't work if java isn't there. So i've put everything in order.
Sent from my Blade using XDA app
Thanks a lot for this should really help me . I have a quick question though, how much space should I need to successfully compile? I have Ubuntu 11.10 64 bit installed alongside windows via the application method and the default size was 18GB. I've read on the android developers that you need 25GB for a single build so how much do you recommend? Also is installing it via the application method ok or should I create a new partition on my HDD? Thank you once again.
youngsta2010 said:
Thanks a lot for this should really help me . I have a quick question though, how much space should I need to successfully compile? I have Ubuntu 11.10 64 bit installed alongside windows via the application method and the default size was 18GB. I've read on the android developers that you need 25GB for a single build so how much do you recommend? Also is installing it via the application method ok or should I create a new partition on my HDD? Thank you once again.
Click to expand...
Click to collapse
You need at least 25 to 30 GB. I don't recommend the application method of installing Ubuntu as you may have problems in the future. You better install Ubuntu alongside Windows. You don't have to make a new partiton for this. Ubuntu installer itself will choose a logical partition with the most space and will allow you to choose how much space you are willing to give for it.
Thanks I think that's what I did already, ran the wubi installer from windows, choose drive then choose how much space. I just went with the default which was 18GB. Then when I reboot I get the grub loader and choose windows or Ubuntu. I'm going to put one of my external drives in my desktop and install it to that. Thank you for the help.
youngsta2010 said:
Thanks I think that's what I did already, ran the wubi installer from windows, choose drive then choose how much space. I just went with the default which was 18GB. Then when I reboot I get the grub loader and choose windows or Ubuntu. I'm going to put one of my external drives in my desktop and install it to that. Thank you for the help.
Click to expand...
Click to collapse
Wubi is different. Boot with ubuntu on a disc or a usb stick and then install it alongside windows.
Sent from my Blade using XDA app
Ah ok, I'll do that. Thanks for the help man and the guide, it's appreciated.
karthiknr can I ask for your help again basically I have everything set up but I'm having trouble with adb and my phone. When I do
Code:
adb devices
without root I get
Code:
List of devices attached
???????????? no permissions
But if I do it with root I get
Code:
No command 'adb' found, did you mean:
I've set up udev according to your instructions and everything else went well until this. Thanks in advance.
How do i do it. im working with Ubuntu 14. which files do i need? how do i do the build? any help would be appreciated
chip71513 said:
How do i do it. im working with Ubuntu 14. which files do i need? how do i do the build? any help would be appreciated
Click to expand...
Click to collapse
Unfortunately I don't really know too much about this so I can't help you that much. But here is your tablet's Odin file, download and extract the zip, the resulting tar.md5 file can then also be opened using 7zip or Winrar and you'll want to extract recovery.img. I'm pretty certain you'll at least need that recovery.img. Also find out if you have a locked bootloader. If you do, you might be S.O.L. and your only chance will be to port SafeStrap somehow.
chip71513 said:
How do i do it. im working with Ubuntu 14. which files do i need? how do i do the build? any help would be appreciated
Click to expand...
Click to collapse
chip,
hi, i use debian but for the most part i think thing should be fairly similar or you should be able to find an equivalent, the packages you need from what i can remember, also pulled from http://docs.kali.org/development/arm-cross-compilation-environment,
Setting Up Your Development Box
Compiling kernels and generating images usually comes at the cost of disk space. Make sure you have at least 50 GB of disk space available on your Kali development machine as well as ample RAM and CPU juice.
Install Dependencies
Start off by installing the required dependencies for ARM cross-compilation.
Code:
apt-get install git-core gnupg flex bison gperf libesd0-dev build-essential zip curl libncurses5-dev zlib1g-dev gcc-multilib g++-multilib
f you are running a 64 bit Kali Linux system, add i386 architecture support to your development environment as follows.
Code:
dpkg --add-architecture i386
apt-get update
apt-get install ia32-libs
Click to expand...
Click to collapse
Also from user @Restl3ss who got me up and running,
so if you're on a 32 bit system,
Code:
apt-get install bison build-essential curl flex git gnupg gperf libesd0-dev libncurses5-dev libsdl1.2-dev libwxgtk2.8-dev libxml2 libxml2-utils lzop openjdk-6-jdk openjdk-6-jre phablet-tools pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev
and if you're on a 64 bit system it's the same as above + a few extras, so
Code:
apt-get install bison build-essential curl flex git gnupg gperf libesd0-dev libncurses5-dev libsdl1.2-dev libwxgtk2.8-dev libxml2 libxml2-utils lzop openjdk-6-jdk openjdk-6-jre phablet-tools pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev g++-multilib gcc-multilib lib32ncurses5-dev lib32readline-gplv2-dev lib32z1-dev lib32bz2-1.0
Click to expand...
Click to collapse
Replicant pre-req for Debian 8
Code:
apt-get install bison flex git-core gperf libncurses-dev build-essential curl squashfs-tools openjdk-7-jre openjdk-7-jdk pngcrush wget zip zlib1g-dev lzma libxml2-utils libc6-dev-i386 g++-multilib lib32z1-dev lib32readline-gplv2-dev lib32ncurses5-dev zlib1g-dev:i386
And to get further along, Welcome to XDA ! The search function is your friend, you can search the whole of XDA, you can also search specific threads,
Keep in mind some of these packages may not be available, simply remove them from the apt-get install command line, and/or search for equivalents.
Once those steps are completed, you will need to create your cm11 directory on a drive/partition whith a few hundred gigs of space
now you wil get install google repo tool, see this page for complete instruction http://source.android.com/source/downloading.html
Code:
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
After that is done cd to your cm11 directory and initialize your repo, see the internet for complete instruction.... :silly:
Code:
repo init -u https://github.com/CyanogenMod/android.git -b [COLOR="Red"]cm-11.0[/COLOR]
you can edit the branch entry accordingly, cm-11.0, cm-12.o etc. then
repo sync
and wait for a loooong time
m
---------- Post added at 09:37 AM ---------- Previous post was at 09:15 AM ----------
okay, part 2
github is awesome, developers can get cranky, always seek permission or give credit where applicable !
bookmark this page https://github.com/
for you purposes you will search github for
matisse or matissewifi and download a device tree and then edit the tree to conform to your device.
samsung kernel sources, start here http://opensource.samsung.com/reception.do
search your device name sm-tblahblahblah
take this advice, one you have your kernel source safe fat and happy on your hard drive keep it safe and work from a copy of it instead.
i keep my sources in a centralized location, /storage/kbuild and then copy the source as per the device i'm working on to
cm11/kernel/samsung/whatever, there is a readme in the archive you will download which gives basic instruction as to the defconfig you will use
as well as the recommended toolchain, on the toolchain as long as you use a standard arm-eabi 4.6 or 4.7 you should be good.
again goto github and search for a toolchain with terms such as arm-eabi or arm-linux-android
m
Update- for building cortex-a53 you may also need to install libjemalloc packages
Update - when cloning new toolchains to /opt/toolchains/ run updatedb
also add to path ~/.bashrc
PATH=/opt/<toolchain-name>/bin:$PATH
Note- the "triplet" in the names of the toolchains bin/binaries correspond to cpu-vendor-os, arm-toaster-linux
Update : See this excellent thread
Learn about the repo tool , manifests and local manifests and 5 important tips !
Courtesy of @Red Devil
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Might want to add some filesystem support for large microsd cards and stuff
Code:
apt-get install hfsplus hfsprogs hfsutils hfsutils-tcltk exfat-fuse exfat-utils
If the a at the end of your device model means it's AT&T, you won't be able to get recovery for it. AT&T locks bootloader on ALL their devices, tablets included. I, along with @moonbutt74, we're unsuccessful building recovery for my 337a (the 8" AT&T tab 4)
p4s,
hey hey, thanks for catching that, i didn't see that sneaky little [A] at the end, i do need glasses
I never heard back from hashcode on my safestrap questions either
moonbutt74 said:
p4s,
hey hey, thanks for catching that, i didn't see that sneaky little [A] at the end, i do need glasses
I never heard back from hashcode on my safestrap questions either
Click to expand...
Click to collapse
I don't think you will. Only response I got from him was about AT&T locking down their devices and that's all. Guess this learned me to check development before buying a tablet. Got burned with 2 tabs now, the Note 10.1 n8013 which Sammy ignored in the Kitkat update and now this that AT&T decided to keep ownership of even tho I paid for it in full.
I have recieved many messages about how to compile ROMs from compressed sources , here i present the guide
First Lets start with the download links
Download Thanks to @DigiGoon @vaibhavpandeyvpz @kD @MSF Jarvis and @regalstreak for their works
for more info u can see the link above to understand things better
Now After Downloading the sources what to do
*extarct it using terminal as said in the above link
after that the main thing , installation of main packages
1)Installing Java Development Kit (JDK)
For Kitkat
Installation of Java V6
Open The Terminal and Paste following Command
a) This will Remove the wrong Java JDK from Ubuntu 13.10
Code:
sudo apt-get purge openjdk-\* icedtea-\* icedtea6-\*
b) Enter the Following Command and This will Install JDK
Code:
wget https://launchpad.net/~webupd8team/+archive/ubuntu/java/+files/oracle-java6-installer_6u45-0%7Ewebupd8%7E8_all.deb sudo dpkg -i oracle-java6-installer_6u45-0~webupd8~8_all.deb wget https://launchpad.net/~webupd8team/+archive/ubuntu/java/+files/oracle-java6-set-default_6u45-0%7Ewebupd8%7E8_all.deb sudo dpkg -i oracle-java6-set-default_6u45-0~webupd8~8_all.deb
c)Check The Java Version Installed
Code:
java -version
For Lollipop/Marshmallow Required Java Version is 7 (java 8 not yet supported)
To Install Java V7
Code:
sudo apt-get update && sudo apt-get install openjdk-7-jdk
NOTE: For Ubuntu 16.04 user use this command
Code:
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-7-jdk
*************JAVA INSTALLATION COMPLETES*****************
2)Installation Of Required Tools
Enter The Following Command
Code:
sudo apt-get install git-core gnupg ccache lzop flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5 lib32z1 lib32bz2-1.0 lib32ncurses5-dev x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.8-dev python
NOTE:if u get broken dependencies error use following command and then above command
Code:
sudo apt-get update
sudo apt-get upgrade
**************All DONE*****************************
Now compiling and setting up files
after all the above
download all ur device related sources like device tree, kernel source, vendor files(if present)
Now where to keep those sources?
So, here i take cm13 and ASUS ZenFone 4 as example
The DEVICE TREE goes here:
cm13/device/asus/a400cg
Explaination:
asus is the company name u can know it from the .zip of the device tree u downloaded
*e.g.: android_device_asus_a400cg-master.zip
this says the directory and name of folders itself
device / asus / a400cg /
The Vendor Files Here:
cm13/vendor/asus/a400cg/
The Kernel Source (if not using prebuilt kernel) Here:
cm13/kernel/asus/a400cg/
***************SETTINGS FILES COMPLETE**************
Now Compiling:
open up terminal and cd to cm13 directory
Type :
. build/envsetup.sh or source build/envsetup.sh as ur choice
then
brunch a400cg
and finished wait for it to complete.
Holla u have compiled ROM from compressed source.
Any idea how much harddrive space will it require ?
Please reply as soon as possible !
Thanks in advanced
ABSathe said:
Any idea how much harddrive space will it require ?
Please reply as soon as possible !
Thanks in advanced
Click to expand...
Click to collapse
40gb if with repo
and while compiling it will increase more
sandeep.sethi said:
40gb if with repo
and while compiling it will increase more
Click to expand...
Click to collapse
I'm using no repo sources .. Will 50 GB be sufficient ? With compiling !
Sent from my Moto E using XDA Labs
ABSathe said:
I'm using no repo sources .. Will 50 GB be sufficient ? With compiling !
Click to expand...
Click to collapse
no bro
i recommend a minimum of 150-200gb partition for ubuntu
sandeep.sethi said:
no bro
i recommend a minimum of 150-200gb partition for ubuntu
Click to expand...
Click to collapse
Okay .. No problem .. I'll delete some old sources then
Sent from my Moto E using XDA Labs
thanks for the guide
kjinx01 said:
thanks for the guide
Click to expand...
Click to collapse
your welcome
thanks for the guide . really need it
Anarchy16 said:
thanks for the guide . really need it
Click to expand...
Click to collapse
your welcome
@sandeep.sethi can I use stock boot.img if I don't have kernel source. .pls reply
Sent from my Samsung Galaxy Note 3 using XDA Labs
Yeshas Prabhakar said:
@sandeep.sethi can I use stock boot.img if I don't have kernel source. .pls reply
Sent from my Samsung Galaxy Note 3 using XDA Labs
Click to expand...
Click to collapse
yes use the prebuilt kernel
sandeep.sethi said:
yes use the prebuilt kernel
Click to expand...
Click to collapse
Can you please tell me how to use the stock kernel.
I am new to compiling. Want to build for my Mi Max 2 but the kernel sources have not yet been released.
I am running Lineage 14.1 on my phone and I have a boot.img as well as a ZImage after extracting the boot.img.
Can use this to compile a rr or xenon HD rom? If yes how do I put this in my Google cloud Engine.
If possible can you please tell me the steps.
Thank you.
Jay_B said:
Can you please tell me how to use the stock kernel.
I am new to compiling. Want to build for my Mi Max 2 but the kernel sources have not yet been released.
I am running Lineage 14.1 on my phone and I have a boot.img as well as a ZImage after extracting the boot.img.
Can use this to compile a rr or xenon HD rom? If yes how do I put this in my Google cloud Engine.
If possible can you please tell me the steps.
Thank you.
Click to expand...
Click to collapse
keep tha zimage in a folder in device tree and define the location of it in board config
for reference: https://github.com/adeveloper79/android_device_aio_otfp_device/blob/cm-12.1/BoardConfig.mk#L73
Thank you for the quick reply.
I made put the zImage in a folder name kernel in the device tree and updated the boardconfig with the path to the zImage.
The issue is when I type lunch it does not show the device as it is not yet supported. So how do I proceed.
Thank you.
Thanks for the guide
I have recieved many messages about how to compile ROMs from compressed sources , here i present the guide
First Lets start with the download links
Download Thanks to @DigiGoon @vaibhavpandeyvpz @kD @MSF Jarvis and @regalstreak for their works
for more info u can see the link above to understand things better
Now After Downloading the sources what to do
*extarct it using terminal as said in the above link
after that the main thing , installation of main packages
1)Installing Java Development Kit (JDK)
For Kitkat
Installation of Java V6
Open The Terminal and Paste following Command
a) This will Remove the wrong Java JDK from Ubuntu 13.10
Code:
sudo apt-get purge openjdk-\* icedtea-\* icedtea6-\*
b) Enter the Following Command and This will Install JDK
Code:
wget https://launchpad.net/~webupd8team/+archive/ubuntu/java/+files/oracle-java6-installer_6u45-0%7Ewebupd8%7E8_all.deb sudo dpkg -i oracle-java6-installer_6u45-0~webupd8~8_all.deb wget https://launchpad.net/~webupd8team/+archive/ubuntu/java/+files/oracle-java6-set-default_6u45-0%7Ewebupd8%7E8_all.deb sudo dpkg -i oracle-java6-set-default_6u45-0~webupd8~8_all.deb
c)Check The Java Version Installed
Code:
java -version
For Lollipop/Marshmallow Required Java Version is 7 (java 8 not yet supported)
To Install Java V7
Code:
sudo apt-get update && sudo apt-get install openjdk-7-jdk
NOTE: For Ubuntu 16.04 user use this command
Code:
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-7-jdk
*************JAVA INSTALLATION COMPLETES*****************
2)Installation Of Required Tools
Enter The Following Command
Code:
sudo apt-get install git-core gnupg ccache lzop flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5 lib32z1 lib32bz2-1.0 lib32ncurses5-dev x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.8-dev python
NOTE:if u get broken dependencies error use following command and then above command
Code:
sudo apt-get update
sudo apt-get upgrade
**************All DONE*****************************
Now compiling and setting up files
after all the above
download all ur device related sources like device tree, kernel source, vendor files(if present)
Now where to keep those sources?
So, here i take cm13 and ASUS ZenFone 4 as example
The DEVICE TREE goes here:
cm13/device/asus/a400cg
Explaination:
asus is the company name u can know it from the .zip of the device tree u downloaded
*e.g.: android_device_asus_a400cg-master.zip
this says the directory and name of folders itself
device / asus / a400cg /
The Vendor Files Here:
cm13/vendor/asus/a400cg/
The Kernel Source (if not using prebuilt kernel) Here:
cm13/kernel/asus/a400cg/
***************SETTINGS FILES COMPLETE**************
Now Compiling:
open up terminal and cd to cm13 directory
Type :
. build/envsetup.sh or source build/envsetup.sh as ur choice
then
brunch a400cg
and finished wait for it to complete.
Holla u have compiled ROM from compressed source.
In case