[ DIY ] How To Compile Your Own Nightlies (and Learn Something in the Process) - Motorola Droid 3

--- copied with permission from nathanpfry.com ---​
Hi everyone! Have you ever wanted to compile your own nightlies, but are too intimidated or "not a dev"?
For various reasons, I've decided to write a guide about how you too can enter the wonderful world of development.
Before we begin, I'm going to say one thing. I'll probably repeat it a bunch of times too, to be sure everyone reads it at least once while skimming through this. PLEASE GOOGLE YOUR QUESTION FOR AT LEAST 5 MINUTES BEFORE ASKING IT HERE. The main reason I wrote this guide is to try to refocus the point of the "Development" forums on XDA. There are many users out there that seem to think this is a place to make demands for answers without trying to contribute or learn anything themselves. Developing isn't an easy thing. You should know a little bit of Linux going into this, if not, prepare yourself for some reading. This isn't the place for you to ask how to install Ubuntu, or why you need 64 bit. Just have a little faith and trust me.
Major thanks goes out to Hashcode.. Seriously, you have no idea what an inspiration he's been. For all intents and purposes, this guide will show you how to set up your system and compile ROMs based on his work, perhaps even help work on fixes. I suppose I should thank google, cyanogenmod, team aokp, thingonaspring (minimoto rocks!) a few others. You know who you are.
On with the show.
Here's a list of things you will need:
1) A decent computer (at least dual core, 2+ gig of RAM, 50 gig free HD space) capable of running Linux
2) A copy of Builduntu
3) Spare time and the desire to learn.
Double check that your main system is 64 bit. 32 bit OS will not work!
Once you get Builduntu up and running (there are instructions @ the above link), read on.
You need to make a decision. What flavor of Android do you want to compile? In other words, AOKP, Cyanogenmod, AOSP, LiquidSmooth, SimpleAOSP etc etc etc.
For the purposes of teaching everyone, I'm going to base this guide on AOKP.
You've made it this far, you're basically almost there. *cue motivational montage music*
When Builduntu says, "initialize the build repo", that means to sync your source code with a git repository. Run these commands in a terminal:
Code:
mkdir ~/android
Code:
cd ~/android
The following command will do the actual initialization:
Code:
repo init -u https://github.com/AOKP/platform_manifest.git -b jb-mr1
Ok, after this next part you're going to want to take a break. It's time to actually download to your computer (sync) the source code. As of writing this guide, it is over 10 gigabytes of information, depending on which "flavor" of Android. In the terminal:
Code:
repo sync
Don't worry, just execute and walk away. Depending on the speed of your internet connection, this could take a long time. Anywhere from one hour to "maybe-you-should-do-this-before-you-go-to-sleep". Up next is actually doing the compiling.
When that finishes, you have the source code. Let's get to business. This next bit will probably take a while also, but again, it's a set-it-and-forget-it situation.
Code:
cd ~/android
source build/envsetup.sh
lunch yourdevicenamehere
make otapackage
That should do it! Watch for errors, but everything should work at this point. Again, how long this takes is completely dependent on how fast your computer is. If it completes without a hitch, you'll have a flashable zip file located in ~/android/out/target/product/yourdevicename/
Congrats, you just compiled from source! Now, if you really want to get adventurous, you can start delving into the code itself and make some changes. But this post isn't the place to get into all that. Good luck, and please say thanks if this guide was helpful!
PLEASE PLEASE PLEASE If you happen to find an error in my guide (not just a question about it!) PLEASE PM ME. I will give you credit in the post. A potentially useful fix could be buried pages deep in the thread and unfortunately get lost if it's only a reply. Thanks!

Many thanks!
Although I didn't tried this howto yet, I feel obligated to thank you for this. In the past I though about trying to do something directly tweaking the code and, who knows, contribute with something nice to our "D3 society". But could never figure how to start it. I will spend some time trying to make it work using this "manual" and give some feedback about it.
Again, thanks.

Re: [DIY] How To Compile Your Own Nightlies (and Learn Something in the Process)
Great post.
Sent from my XT926 using Tapatalk 2

Thank you for taking the time to show the community how to contribute and give back what has been given.

Thanks for this awesome guide! I followed your directions and did produce a zip that I can flash with safestrap. Unfortunately it will not boot though:crying: Is there anything else to do with the kexec zip to make it safestrap compatible? Or did I just screw something up
Either way I am glad I did this and without your 2 great guides I never would have. So thank you again sylentprofet! :highfive:

Caldair said:
Thanks for this awesome guide! I followed your directions and did produce a zip that I can flash with safestrap. Unfortunately it will not boot though:crying: Is there anything else to do with the kexec zip to make it safestrap compatible? Or did I just screw something up
Either way I am glad I did this and without your 2 great guides I never would have. So thank you again sylentprofet! :highfive:
Click to expand...
Click to collapse
Hmmmmmm. That is a frustrating problem. I've had it happen before..
Just tried a compile myself, and CM10 doesn't work. Silly me for thinking that everything would go smoothly. It could be some changes reflected recently on CM's end. The joys of development!
However, I just tried an AOKP 4.2 build, and it does boot. So I'm going to make some quick changes to the guide to reflect building for AOKP while I examine the code and see what's up.
There's nothing more frustrating when a build completes successfully and then won't flash. I'll keep everyone posted.

this looks amazing
thank you for spending the time to write this up!
May be up for a reinstallation of my Ubuntu (currently 12.04 x86 :/).

Wonderful, might try to adapt for the galaxy note 3.
Lillie via LG Spectrum (waiting for N3 DE) & tapatalk

Related

How To Create A Community Rom

Hey recentrly i made the " b6gsix gude for noobs: how to theme a rom " and one reply from a guy said SO YOU ARE TRYING TO MAKE A COMMUNITY ROM ?
i wasnt but thats sounds nice. ive seen one community rom b4 and i like the concept but im no dev lol so how do i go about doing so?
You don't. Don't hop right into making a ROM. You need to at least know how to program it. Let me quote something cyanogen said:
Here's my advice for those looking to make their own Android ROMs.. Stop. Write an app or two first, learn how the system works from a developer standpoint. Learn some Java. Read the developer documentation. Learn how to use Git. Then learn how to build AOSP from source. Read the porting guides, and learn how the build system works (the links below have almost everything you could possibly want to know). Now try to put your new found skills to work on enhancing the platform by writing code or making theme overlays. And share! And put that **** on your resume. There is a *ton* of information out there but any kind of "step-by-step rom cooking guide" is going to be a complete fail- it's too broad of a subject.
Android Developer Guides: http://d.android.com
Working with AOSP source: http://source.android.com
Platform Developer Guide: http://pdk.android.com
Android Gitweb: http://android.git.kernel.org
Git Ready (Git tips and tricks): http://www.gitready.com/
Building CyanogenMod: http://wiki.cyanogenmod.com/index.php/Building_from_source
How Dexopt works and what are those odex files: http://android.git.kernel.org/?p=pl...bcd225e47b2cc7abb2a366112d3aeb45936;hb=master
The PDK site is absolutely vital if you are going to work on custom ROMs. Read every single page. Twice. Some of the info isn't up to date, but you'll get a really good idea about what goes into actually configuring Android to work on a real device.
Click to expand...
Click to collapse
I'm seeing you're having problems themeing. Understandable - you're new. However, if you can't even theme, you need to just take it slow. Master Android deving little by little until you can write an app - as useful one at that - and can write it well.
As for starting a community ROM - I don't think many people will just hop on it with you if you yourself can't even program the ROM.

Cyanogenmod 7 (Think Tank, in progress)

Hello All,
So I´m all sorts of new at developing for android, and I wanted to open up my thoughts and efforts to the community. I am trying to port CM 7, (eventually 9), and am using the CM Compiler that was developed by LithidCM. I´ve gotten everything up and running, now I just need to figure out how to set up the proper files from the Holiday itself. As I said, this is a work in progress, and any suggestions are very helpful. Right now, the stumbling block is setting up a Holiday/Raider/Vivid repo with the necessary compilation files.
Lets get cooking!
CMCompiler (All credit goes to Lithid CM) http://forum.xda-developers.com/showthread.php?t=1415661
+1 i would love to see cm7 or 9 on my vivid
That CMCompiler wont work for the Vivid
Sent from my SGH-T989 using Tapatalk
Not until there is either a CM repo for the Vivid or I can set up the correct files locally, then I can modify the script for it to look there, rather than the CM repo. Iḿ looking for ways to make it WORK, so anything to that end is appreciated. Either that or work on another method if it looks more promising. I have time, a machine, a device, some knowledge, and the desire, I just want to get together with some other people who can contribute a bit on the knowledge end to HELP get this up and running.
XAviierG said:
That CMCompiler wont work for the Vivid
Sent from my SGH-T989 using Tapatalk
Click to expand...
Click to collapse
That was very insightful.... I'm sure the OP is very thankful for all your help.
I'm already taking care of this
If you're into it, you can download my repo for CM9 here: https://github.com/thecubed/android_device_htc_holiday
I make no promises on timeline, but I do expect to have a teaser video with a few things working at least here in a day or so.
thecubed said:
I'm already taking care of this
If you're into it, you can download my repo for CM9 here: https://github.com/thecubed/android_device_htc_holiday
I make no promises on timeline, but I do expect to have a teaser video with a few things working at least here in a day or so.
Click to expand...
Click to collapse
if you guys want i got a port booting with signal for the amaze almost same device
I too would love to see both CM7 and 9 on the Vivid, however from what i gather CMCompiler is not really going to be the way at it.
I follow alot of Team Haxsung and CM people and they all believe it to be not the best way to help the CM community, rather a way to re brand and take credit.
Further, CMCompiler requires there being a branch, which means that nightlies will be compiled quickly by build bots, if build bots are down or you want to make a nightly KANG you can install the dependencies via the CM wiki and build yourself, which might actually allow you to learn how to build and modify the source rather then having an application spit it out for you
Drew
thecubed said:
I'm already taking care of this
If you're into it, you can download my repo for CM9 here: https://github.com/thecubed/android_device_htc_holiday
I make no promises on timeline, but I do expect to have a teaser video with a few things working at least here in a day or so.
Click to expand...
Click to collapse
AH! I have been using your repo as my source on CMC, but it fails each time because I´m missing some files. which files, well, that´s the step I´m at now. Im stoked your working on this. I´d like to learn how to do this on my own as well, then I´d be happy to put together a step by step from scratch for building from a fresh install of Ubuntu, I think it´s needed.
drewdatrip said:
I too would love to see both CM7 and 9 on the Vivid, however from what i gather CMCompiler is not really going to be the way at it.
I follow alot of Team Haxsung and CM people and they all believe it to be not the best way to help the CM community, rather a way to re brand and take credit.
Further, CMCompiler requires there being a branch, which means that nightlies will be compiled quickly by build bots, if build bots are down or you want to make a nightly KANG you can install the dependencies via the CM wiki and build yourself, which might actually allow you to learn how to build and modify the source rather then having an application spit it out for you
Drew
Click to expand...
Click to collapse
And if you´ve read anything I have written (and what others have added) you would see that the purpose of this post is LEARNING. I´m not a linux guy, but I´m quickly figuring it out, not much help to individuals such as yourself who choose to distract and detract rather than assist and contribute, or at least keep your finger off the ¨submit¨ button.
I posted this thread because there is no working version of CM7 for this device. Lets drop the negativity/whatever and put our efforts and keystrokes to getting this booting.
Some of the amaze builds i have you should just have to have someone make a kernel and they will work
http://dl.dropbox.com/u/40288576/full_ruby-ota-eng.xboarder56_12-24-11.zip (ics 4.0.3 amaze should be easy to port to vivid almost same phone)
http://dl.dropbox.com/u/46431819/Amaze/update-cm-7.1.0-SelfKANG1-Amaze-4g.zip
MCreane said:
And if you´ve read anything I have written (and what others have added) you would see that the purpose of this post is LEARNING. I´m not a linux guy, but I´m quickly figuring it out, not much help to individuals such as yourself who choose to distract and detract rather than assist and contribute, or at least keep your finger off the ¨submit¨ button.
I posted this thread because there is no working version of CM7 for this device. Lets drop the negativity/whatever and put our efforts and keystrokes to getting this booting.
Click to expand...
Click to collapse
Ok we're just letting you know that the CMCompiler will not help. But try this.
http://forum.xda-developers.com/showthread.php?t=667298
My comment had no attitude as you speak of, like XAviierG i was just letting you know that if your intention is LEARNING the CMcompiler does not help with the process. Its an application that runs in a terminal window and you press numbers on screen to pull from the repos, again thats not learning and it wont help get the Vivid working any sooner.
I appropriate your eagerness to learn Linux, i am still learning alot aswell, and i too was excited when i read about the CMcompling application, however after reading about it and the stance of the dev teams i realized that its not the best for me and people looking to learn
Drew
thecubed said:
I'm already taking care of this
If you're into it, you can download my repo for CM9 here: https://github.com/thecubed/android_device_htc_holiday
I make no promises on timeline, but I do expect to have a teaser video with a few things working at least here in a day or so.
Click to expand...
Click to collapse
This just made my day
Sent from my HTC PH39100 using Tapatalk
CMC got me motivated to figure out how to get this working. Yes it´s a shortcut, no it doesn´t help anyone who can´t flash through rommanager already, and thus not us, right now. However, what gets people learning is a good thing, as far as I am concerned. I know far more about Linux now than I ever would have if it had worked beautifully from the start, including building everything through other means that it looks to do through invisible scripting.
As I said, I´m done talking about this.
Back on topic.
I am working on building a fresh CM7 Kernel through
Code:
[email protected]:~/android/kernel/cm-kernel$ adb pull /proc/config.gz /home/michaelcreane/android/kernel/cm-kernel/config.gz
cat config.gz | gunzip > .config
All goes well
Code:
make ARCH=arm CROSS_COMPILE=$CCOMPILER oldconfig
make ARCH=arm CROSS_COMPILE=$CCOMPILER menuconfig
No problems.
But then
Code:
make ARCH=arm CROSS_COMPILE=$CCOMPILER -j`grep 'processor' /proc/cpuinfo | wc -l`
and I run into this:
Code:
[email protected]:~/android/kernel/cm-kernel$ make ARCH=arm CROSS_COMPILE=$CCOMPILER -j`grep 'processor' /proc/cpuinfo | wc -l`
scripts/kconfig/conf --silentoldconfig Kconfig
#
# configuration written to .config
#
CHK include/linux/version.h
CHK include/generated/utsrelease.h
CC scripts/mod/empty.o
cc1: error: unrecognized command line option ‘-mlittle-endian’
cc1: error: unrecognized command line option ‘-mapcs’
cc1: error: unrecognized command line option ‘-mno-sched-prolog’
cc1: error: unrecognized command line option ‘-mno-thumb-interwork’
scripts/mod/empty.c:1:0: error: unknown ABI (aapcs-linux) for -mabi= switch
scripts/mod/empty.c:1:0: error: bad value (armv5t) for -march= switch
make[2]: *** [scripts/mod/empty.o] Error 1
make[1]: *** [scripts/mod] Error 2
make: *** [scripts] Error 2
make: INTERNAL: Exiting with 3 jobserver tokens available; should be 2!
I just accepted all defaults in the RCU implementation, and I´m guessing that´s where the errors are starting. I got the same error when I ran
Code:
scripts/extract-ikconfig boot.img > .config
rather than extracting the .gz file from my device. Any ideas?
@MCreane and the cubed
I'm glad you guys are working on this. Very exited to see what you guys come up with. I also think it would be great to have a guide.
Sent from my HTC PH39100 using XDA App
I was able to build the Holiday kernel successfully after pulling config.gz and doing this:
Code:
make oldconfig
export CROSS_COMPILE=<path to android source>/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
make ARCH=arm -j2
michealw31 said:
I was able to build the Holiday kernel successfully after pulling config.gz and doing this:
Code:
make oldconfig
export CROSS_COMPILE=<path to android source>/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
make ARCH=arm -j2
Click to expand...
Click to collapse
Awesome, ill give that a shot after work. Much appreciated
Sent from my HTC Raider X710e using xda premium
Tease: we have a successful booting CM9 from source
Current problem: the kernel we're using (stock from source) is missing the proper USB stack for ICS, as well as GSL changes, so we either have to fork toastcfh's kernel, or fix tiamat's kernel which currently doesn't boot.
However, we were able to get it to boot with a stock kernel built from source. Gfx are skewed, but touchscreen worked, and the colors were right-- so we're on to something at least.
Anyway, I'll be pushing what I have to my github as "holidayics" instead of "holiday" until it's ready for primetime. (@ http://github.com/thecubed )
thecubed said:
Tease: we have a successful booting CM9 from source
Current problem: the kernel we're using (stock from source) is missing the proper USB stack for ICS, as well as GSL changes, so we either have to fork toastcfh's kernel, or fix tiamat's kernel which currently doesn't boot.
However, we were able to get it to boot with a stock kernel built from source. Gfx are skewed, but touchscreen worked, and the colors were right-- so we're on to something at least.
Anyway, I'll be pushing what I have to my github as "holidayics" instead of "holiday" until it's ready for primetime. (@ http://github.com/thecubed )
Click to expand...
Click to collapse
Good to hear about your progress. I'm willing to help test if you need any help in that department.
Sent from my Transformer TF101 using Tapatalk

[R&D] [910F] porting CM12

*EDIT* This thread is now based upon the work by @fattire and @slayher, who got it up on the 910T. For that phone see this thread: http://forum.xda-developers.com/not...nt/unoffcial-cm-12-0-t-mobile-note-4-t2964887
This thread is for dev's interested to help out porting CM12 to our device. I've researched for info regarding CM ports and good information is actually quit scarce. A dev might post something like 'hmm stuck at boot anim' and then the next day 'got it, booting now !' without explaining what he did to solve it. I want to change that, so this thread can serve as a guide for other first time porters too (this is also my first porting project), documenting every step as in much detail as possible.
For ROMS: http://forum.xda-developers.com/not...official-cm-12-0-910f-note-4-trltexx-t2987412
Please use this thread for R&D/development ONLY !!!
Ok, I'm really starting from scratch and never done any phone ROM porting. I've just made a new virtual disk running ubuntu and am currently downloading the CM12 repo. I figured, how to get even started here. I figured that the goals we need to attain in this order:
1) compile the kernel samsung supplied
2) make sure we can boot into kernel
3) get ADB up and running
4) get CM12 starting up, even the bootanim alone would be a nice goal to reach
5) Booting into homescreen
6) Fixing all stuff like modem, wifi etc etc etc
Anyway, I'm currently downloading CM12 sources as we speak ...
This is by the way a link I found very useful: http://www.androidenea.com/2009/08/init-process-and-initrc.html It describes the Android init process, cause I was wondering, how to even start all this ? How to get from kernel to CM booting: that's where init.rc should come into play of course
Good luck this is a long project. I build carbonrom for another phone where everything for cm was allready fixed. I would start with a phone that allready has support to learn how the process goes. You can brick your phone and it's a process of trail and error... But I hope you manage good luck!
KaptKeefmenneke said:
Good luck this is a long project. I build carbonrom for another phone where everything for cm was allready fixed. I would start with a phone that allready has support to learn how the process goes. You can brick your phone and it's a process of trail and error... But I hope you manage good luck!
Click to expand...
Click to collapse
I'm not sure I understand what you mean ? If the phone already has support, then what's there to port ? Or do you mean building CM itself ? That I've done quite a few times already, did quite a bit of work on the i9500, fixing RILD issue's, kernel issue's and other stuff.
soo...maybe m wrong (has been a while snce ive ported) but im goin to drop a few lines anyhow......
porting is very different from source building.....the only reason you would need to dl the cm sources would be to compile the rom using sources...and right now the note 4 has none we would need device,kernel,common,vendor sources for that....so... we cant source build right now only port....sp what we need to do is research which device officially or unofficially that has cm with same specs as the note4 things like screen size, board, things of that nature....and would highly recommend using the same carrier as well.....but once we have that info....dl that phones cm rom zip....dl one of our phones rom zips.....now for the fun....ill lay out a way i did it maybe is the same still ...
place both cm zip and note 4 zip on desktop..
create a new folder call it new
drag all files from the cm zip into the new
open the new and open the note 4 zip have them side by side
now your going to drag pretty much all folders/files from the note 4 system folder into the new sytsem folder one folder at a time excluding:
app,priv-app,etc,fonts,media,framework,xbin (im probably forgetting one or two but has been a long time)
now the fun begins....time to edit some xmls and trial and error on pretty much everything until it is working right
you are also going to want to change out the kernel and have to edit the updater-script in the meta-inf....
im positive im forgetting a few things but this is pretty much what i can remember......from off the top of my head...some of the guides ill link in a bit will go into greater detail and explain things more in depth
a few links ive had bookmarked that will help ya
http://forum.xda-developers.com/showthread.php?t=1908008
http://forum.xda-developers.com/showthread.php?t=732957
http://forum.xda-developers.com/showthread.php?t=1957219
http://forum.xda-developers.com/showthread.php?t=1272270
http://forum.xda-developers.com/showthread.php?t=2113479
http://forum.xda-developers.com/showthread.php?t=1801690
http://forum.xda-developers.com/showthread.php?t=2251719
http://forum.xda-developers.com/showthread.php?t=1941239
http://forum.xda-developers.com/showthread.php?t=1805408
http://forum.xda-developers.com/showthread.php?t=2058850
all of these links in one way or another have helped me during my porting phase hope they do the same for you ...like ive said before im more of a source builder so thats what imgoing to be trying to do is getting a working tree... but if you need help just hit me up ill do what i can
Shouldn't this thread be in general?
jdidtht said:
Shouldn't this thread be in general?
Click to expand...
Click to collapse
yes it really should being as there is no development only discussion...but thats the moderators job not mine
spleef said:
yes it really should being as there is no development only discussion...but thats the moderators job not mine
Click to expand...
Click to collapse
Threads regarding R&D belong in development, so I guess it really belongs here. Even more so cause if it's moved to general, tons of n00bs will join in and destroy the thread. please keep this developers only.
Anyway thanks to see you join in Spleef, much appreciated !! Still setting up my environment myself ...
spleef said:
soo...maybe m wrong (has been a while snce ive ported) but im goin to drop a few lines anyhow......
porting is very different from source building.....the only reason you would need to dl the cm sources would be to compile the rom using sources...and right now the note 4 has none we would need device,kernel,common,vendor sources for that....so... we cant source build right now only port....sp what we need to do is research which device officially or unofficially that has cm with same specs as the note4 things like screen size, board, things of that nature....and would highly recommend using the same carrier as well.....but once we have that info....dl that phones cm rom zip....dl one of our phones rom zips.....now for the fun....ill lay out a way i did it maybe is the same still ...
place both cm zip and note 4 zip on desktop..
create a new folder call it new
drag all files from the cm zip into the new
open the new and open the note 4 zip have them side by side
now your going to drag pretty much all folders/files from the note 4 system folder into the new sytsem folder one folder at a time excluding:
app,priv-app,etc,fonts,media,framework,xbin (im probably forgetting one or two but has been a long time)
now the fun begins....time to edit some xmls and trial and error on pretty much everything until it is working right
you are also going to want to change out the kernel and have to edit the updater-script in the meta-inf....
im positive im forgetting a few things but this is pretty much what i can remember......from off the top of my head...some of the guides ill link in a bit will go into greater detail and explain things more in depth
a few links ive had bookmarked that will help ya
http://forum.xda-developers.com/showthread.php?t=1908008
http://forum.xda-developers.com/showthread.php?t=732957
http://forum.xda-developers.com/showthread.php?t=1957219
http://forum.xda-developers.com/showthread.php?t=1272270
http://forum.xda-developers.com/showthread.php?t=2113479
http://forum.xda-developers.com/showthread.php?t=1801690
http://forum.xda-developers.com/showthread.php?t=2251719
http://forum.xda-developers.com/showthread.php?t=1941239
http://forum.xda-developers.com/showthread.php?t=1805408
http://forum.xda-developers.com/showthread.php?t=2058850
all of these links in one way or another have helped me during my porting phase hope they do the same for you ...like ive said before im more of a source builder so thats what imgoing to be trying to do is getting a working tree... but if you need help just hit me up ill do what i can
Click to expand...
Click to collapse
Great addition to the thread ! Hmm I haven't done any porting myself. I figured once we have a kernel up (compiling it should be easy), then what's stopping us from booting CM ? I mean of course RILD won't work if we don't have a JNI (or what's it called on ART, ANI ? ) interface to the modem. Of course we won't have NFC, internet, telephony, all that. But merely booting a graphical interface that should be doable with Nexus 6 source code, right ? I mean all we need is SoC sources so we have cpu & graphics working, right ? So That was what I had in mind myself but your approach actually is quite the same now I think of it
Thread is moved to general AGAIN. Hehe. Starting a development thread ON XDA and have it in the developer section seems harder than porting CM12 Anyway I guess it doesn't matter in which section it is, as long as n00bs and trolls stay out and we can focus on development only.
Anyway, downloading kernel sources as we speak ...
BTW, here is Nexus 6 source code: http://www.xda-developers.com/android/google-nexus-6-factory-images/
Going to down that right now too ...
Ok, building kernel as we speak. I just installed the arm-eabi-4.7 toolchain, like this:
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.7/
And then edited the makefile and issued the 3 commands all as specified in README_Kernel.txt from the Samsung Kernel. So far so good
And yes, as expected, build breaks:
drivers/scsi/ufs/ufs_test.c:25:19: fatal error: ../sd.h: No such file or directory
compilation terminated.
make[3]: *** [drivers/scsi/ufs/ufs_test.o] Error 1
make[2]: *** [drivers/scsi/ufs] Error 2
make[1]: *** [drivers/scsi] Error 2
make: *** [drivers] Error 2
Hehe, Samsung wouldn't be Samsung if they would supply a kernel that actually builds from the start Going to investigate ...
Actually that seems like an easy fix, just linked the file correctly
And a new break:
In file included from drivers/gud/MobiCoreDriver/logging.c:21:0:
drivers/gud/MobiCoreDriver/main.h:24:22: fatal error: platform.h: No such file or directory
I'd say it's looking for the file in platforms/MSM8960_SURF_STD, going to link it correctly ...
And building again ...
n file included from drivers/video/msm/mdss/mdss_mdp_trace.h:255:0,
from drivers/video/msm/mdss/mdss_mdp.c:61:
include/trace/define_trace.h:79:43: fatal error: ./mdss_mdp_trace.h: No such file or directory
Include should point to kernel includes, fixing it again
And building again ...
Code:
OBJCOPY arch/arm/boot/Image
Kernel: arch/arm/boot/Image is ready
LZO arch/arm/boot/compressed/piggy.lzo
AS arch/arm/boot/compressed/piggy.lzo.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
Kernel ready Of course that was the easy part, hehe, but still, progress. Tomorrow going to start with the difficult part, getting CM up
I've ported before but only tw where it was mainly framework edits. Never worked with cm before but like the op I'm keen to learn. If i can help at all just let me know, I use linux mint myself rather than Ubuntu but they're very similar
So, just downloaded Nexus 6 sources. It seems that directory /device/moto/shamu contains the device hardware stuff we need ! Going to research some more today ...
*EDIT* also mind the propietary-blobs.txt in that directory. I'm still waiting for my Note 4 myself (hopefully friday), but this needs to be compared with the files on the device, cause if they exist, they will be blobs of course and we need them.

Topics and questions regarding compiling AOSP based Roms vs other sources like CM

I have decided to rework the thread to ovoid any confusion as the intent of posting this thread was to ask questions about compiling custom Roms from AOSP source that someone like myself who gained their development experience on other devices that building from pure AOSP code was not an option and are not as familiar working with AOSP. In the past my own experience comes from using and modifying for example the Cyanogenmod source so after attempting to now base my Rom on AOSP this time around with Lollipop have run into a few unfamiliar differences. As each question or topic is addressed I will update the Op. The hope is not only will I find solutions or answers to my own questions but that others in the same position will also be able to find use of the discussions posted in this thread.
Compiling the AOSP source into a format that can be safely flashed using a custom recovery. This was a 3 part question the first was just simply how to compile AOSP in a format other then .img files that can be flashed using a custom recovery without the need of flashing through fastboot or needing to use the adb sideload option.
1, Compiling AOSP into the for of an update.zip.
This was answered in short by know.patience by suggesting to use the “make otapackage” command in place of "make" to start the build. Was also made aware that a few modifications would need to be made to avoid producing an update package that does not use the new block format but instead the old style zips we are most used to seeing.
2, Now can create an update.zip using the “make otapackage” command ran into an issue that by flashing the update.zip produced would in the process replace the custom recovery used to flash with the Nexus Stock recovery. This was answered by Lethargy who suggested and provided a Link for the following commit.
For getting rid of the AOSP recovery:
https://github.com/Lethargy/android_build/commit/48521e167c642db76c9d4f52b1c63f9abc7f707f
https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558
3, Now can create an update.zip using the “make otapackage” and after applying the above commit are now able to flash the update.zip without replacing the recovery Lethargy also provided links for the following commits.
To get rid of the block-based zip format:
https://github.com/Lethargy/android_build/commit/4d458300d935a3a9d893a590286cb578dcf54db2
You'll also want to make sure you have this commit so it doesn't flash awfully slow in recovery (8~ minutes, but only around 1-2 minutes with this commit):
https://github.com/Lethargy/android_system_extras/commit/52f8d5fc3edfacd112827d0a41516c1dc5f4a468
This one isn't required but you may as well:
https://github.com/Lethargy/android_build/commit/242be9ae4f05e3cb1d39d635cac7147ff904700c
Compiling using the AOSP Master branch vs release branches. In following the directions provided on the Google development site are given the command for downloading the source code using the Master branch. Using the Master branch as apposed to a release branch such as android-5.0.2_r1 or lower have found that the source compiles just fine but have run into one issue and just a general question that a little explanation would be helpful for general understanding of the AOSP Master branch.
The issue is that after flashing a Rom compiled using the Master branch everything in the Rom works as expected other than the radio. I have so far using the same exact vendor blobs as compiling a release branch have not had a signal and baseband version is listed under about phone as unknown.
The general question is that the android version listed compiling a Rom using the Master branch is version 5.0.50.50.50.50. In general I have yet to understand what this version number represents and very little to no information available via the Google Box.
Between the both I now wounder if the Master branch is intended for actual use or if so what changes are required so the baseband version is recognized and radio / Ril will work?
Quick Answer:
Google first commits new code into master and then is later tagged with an update for realease so in generall many things can be broken and the master branch is and not intended to be stable so if building from master expect that things will be broke or buggy.
Compiling Rom and Kernel together. For those of us again used to compiling using say the CM code are now used to compiling the Kernel along with the rest of the code. I know it is easy to just compile the Kernel and include in the device tree but for those of us who would still like the Kernel compiles with the rest of the code there is no information available on the Google Developers site for doing so and there seems to be a few differences as have tried just using the lines used in the CM Hammerhead device repository. I have come across these commits from Cl3Kener that should help. Hate posting other developers code but is on Github so is there for the public at large. So far have only tested as is so will update if finding not all changes are necessary or can be modified.
Inline Kernel Building
https://github.com/OptiPop/device_lge_hammerhead/commit/7de8fd95b6df16cb6311161d5048874d69cf1cb1
https://github.com/OptiPop/device_lge_hammerhead/commit/87768896f4eb8fcd989ce3b8492ca65305513851
https://github.com/OptiPop/device_lge_hammerhead/commit/5460eb3aa76ea5d813f64a3b3bab6ace1be6de68
Adding Pre-Built APK's
Seems Sprint users need a few apk's for updating prl and what not that are included into the Stock release but are not part of the AOSP code. For some reason through vendor or even device have tried adding these apk's into the build. First try I created a sprint vendor section and received a few errors untill learning would need to add sprint into a vendor white list found in build. Will post link to file later. After found the extra "Services.jar" I found in the stock image not found in the aosp compiled Rom did copy into the build but the apk's had not. Looking in the other vendor blobs noticed lge adds "qcrilmsgtunnel.apk" so followed the example and even tried just adding the other spk's into lge expanding the list used for adding in "qcrilmsgtunnel.apk" but still no luck. Also have tried adding through the device files for Hammerhead just to get them into the Rom for testing and still no luck. If this was CM or any other Rom not using pure aosp this would have been a 5 minut project so need to do some aditional homework.
Again think this thread could be a good resource for developers who are new to building their Roms around AOSP so wanted to include everything I run into during the process of moving away from using a heavily modified CM based code as the base of my Rom to using AOSP in its place so developers who are or in the same process or for those in the future can use as a resource to quickly adjusting. I have been building CM based Roms like Starship for years and after hours of working on other aspects to suddenly be stumped by these small differences between platforms can be very frustrating.
to the OP:
answer to your first question comes in two parts.
a) use 'make -j# otapackage' will generate a zip that is flashable in custom recovery.
b) if you plan on adding other files after the zip is made, you will need this info here:
https://github.com/android/platform_build/commit/26e6619c37e294fe2ee63aaa759e0ac861775ce8
There are some modifications needed to generate the OG zip files instead of the new "block" format.
Google hasn't released the 5.0.1 image for the N5 but that doesn't mean you can't build it and install it yourself. I'm running it and it seems okay to me so far although I'm hardly an expert.
simms22 said:
op.. this section is only for developers, to get work done. if you have questions, they belong in the q&a section. you arent new, you should know this. again, this section is only for developers, mot for the normal xda folk to post questions. you have a q&a section just for asking questions. please, ask a mod to move your thread there.
Click to expand...
Click to collapse
I am building a customized AOSP Rom I am interested in sharing so was looking for help or direction in creating an update zip that can be flashed in a custom recovery like TWRP. I am not used to compiling AOSP and with the help of know.patience in the first reply am now able to compile an update.zip I can flash in TWRP but in doing so it also replaces TWRP with the Stock recovery. I have still been using the .img files to flash personally but am still trying to figure out how to solve the recovery replacement issue. I still have other features I am adding and testing before I would like to post my work but before I get to that point I still need to figure out my recovery replacement issue. Maybe using the words personal use may have been confusing but at the moment until ready I have only been using my work personally but would like to at some point post and share. I also have work that is not AOSP based I am sharing in the Android Development section but I have been building CM and other source based Roms and sharing for years. This is the first device I have been able to build AOSP and still have a few things to figure out before sharing any of my AOSP based work. I am otherwise not sure why you think these are questions for general Q&A.
I started this thread in Android Development as there was only about 4 posts in this section and I see many AOSP based Roms in Android Development who's developers obviously know the answers to my questions so tried to get away posting there in hope one of these developers could help or like in the first response point me in the direction of a commit before the thread was moved by a mod into this section. Do you think someone in the general Q&A section is better equipped to help answer questions about compiling an AOSP based Rom in the form of an update.zip that can be flashed in TWRP without also replacing TWRP with the Stock recovery?? Would also be nice knowing what changes in the code need to be made in compiling an old style update.zip that does not use the new block format. This would be a bonus but overall not %100 needed as instead of moving files around after the code has been compiled have added init.d support and first have all the files I want moved into a staging directory and then form an init,d bash script to move the files during first boot and remove those that are not needed like this example I used in my CM based version of the Rom I am trying to update for AOSP for 5.0.
https://github.com/Starship-Android/android_device_starship-common/blob/cm-11.0/app-update
https://github.com/Starship-Android/android_device_starship-common/blob/cm-11.0/cleanup
I must seriously be underestimating the knowledge and in general the types of questions being asked and answered in the general Q&A section.
Honestly if not for the amount of times thanked I would think this comment was not so much about helping or community but more about someone trying to puff themselves up by trying to appear important by making decisions about what questions are worthy of being asked but judging by the number of times they have been helpful I am thinking its either a case of not reading or understanding the question being asked or my own inability to express my questions in the proper manor. Either way its definitely not about taking up resources in a section with less than 10 total posts. The frustrating part as a community as I like to believe we are all in is that why I worked on other parts in updating my Rom had expected that at least more than one developer out of all the AOSP based Roms posted in the development section would have helped me with this one part. Its not like I am asking how to be a developer just a resource to help with two simple things I am sure I could have figured out and will most likely still figure out without any help. Overall my thoughts behind posting this question was that why I am working to figure out something a bit more time consuming at least more than one person would be helpful enough to copy and past a commit.
XDA is weird in that with other devices all the developers would join a team and start a shared group of repository’s for one another to use in trying to make the best possible experience and options for everyone. For example in the op I posted an example of hours of work I did showing what libraries are needed by one another just so others could use it also in trying to port as much as possible for in that case the Galaxy Mini. Then with other devices like seems to be the case with the N5 its all about competition and what I am starting to call the smartest person in the room syndrome. Its just a shame there are only 5 maybe 6 threads posted in this section and I think that says allot about the community in general. So many good things could come about if we just tried to be helpful and pull as much knowledge together as we could. Anyhow think its time for ending this rant.
chairshot215 said:
compiling an AOSP based Rom in the form of an update.zip that can be flashed in TWRP without also replacing TWRP with the Stock recovery?? Would also be nice knowing what changes in the code need to be made in compiling an old style update.zip that does not use the new block format.
Click to expand...
Click to collapse
To get rid of the block-based zip format: https://github.com/Lethargy/android_build/commit/4d458300d935a3a9d893a590286cb578dcf54db2
You'll also want to make sure you have this commit so it doesn't flash awfully slow in recovery (8~ minutes, but only around 1-2 minutes with this commit): https://github.com/Lethargy/android_system_extras/commit/52f8d5fc3edfacd112827d0a41516c1dc5f4a468
This one isn't required but you may as well: https://github.com/Lethargy/android_build/commit/242be9ae4f05e3cb1d39d635cac7147ff904700c
For getting rid of the AOSP recovery: https://github.com/Lethargy/android_build/commit/48521e167c642db76c9d4f52b1c63f9abc7f707f then https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558
Lethargy said:
To get rid of the block-based zip format: https://github.com/Lethargy/android_build/commit/4d458300d935a3a9d893a590286cb578dcf54db2
You'll also want to make sure you have this commit so it doesn't flash awfully slow in recovery (8~ minutes, but only around 1-2 minutes with this commit): https://github.com/Lethargy/android_system_extras/commit/52f8d5fc3edfacd112827d0a41516c1dc5f4a468
This one isn't required but you may as well: https://github.com/Lethargy/android_build/commit/242be9ae4f05e3cb1d39d635cac7147ff904700c
For getting rid of the AOSP recovery: https://github.com/Lethargy/android_build/commit/48521e167c642db76c9d4f52b1c63f9abc7f707f then https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558
Click to expand...
Click to collapse
Thank you this is well beyond what I was looking for and don’t worry I make it a point not to send out PM's with questions that can be helpful for others as well. Otherwise would have blown up the AOSP Rom posters in development but thanks for the information.
chairshot215 said:
.. and don’t worry I make it a point not to send out PM's with questions that can be helpful for others as well..
Click to expand...
Click to collapse
If you mean "I'll probably ignore you if you try asking for support over PM.", that's part of my forum signature.
If you need anything else feel free to @‬‬mention me in a thread, though.
I reworked the Op to avoid confusion as Mods have been moving the thread around into different sections. I personalty believe these questions are more geared towered development than general Q&A but at least at the moment I appear to be wrong about that. Never know though as in the past one day one of the mods may decide to move the thread back into its intended location but until then I guess these topics will be of better use to general users than developers.
chairshot215 said:
I reworked the Op to avoid confusion as Mods have been moving the thread around into different sections. I personalty believe these questions are more geared towered development than general Q&A but at least at the moment I appear to be wrong about that. Never know though as in the past one day one of the mods may decide to move the thread back into its intended location but until then I guess these topics will be of better use to general users than developers.
Click to expand...
Click to collapse
You should include the other commit (https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558) which fixes building since the first one results in "IndentationError: unexpected indent".
Lethargy said:
You should include the other commit (https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558) which fixes building since the first one results in "IndentationError: unexpected indent".
Click to expand...
Click to collapse
Thanks for the heads up, when testing these I also cherry picked a few other things that looked related. Have to double check but may have forked the repository’s from you so would receive credit if anyone decided to look over my repository’s. Well overall my personal Github has been pretty bare as in the past most work was done on more obscure Virgin Mobile devices with only a few developers so we would pretty much create an organization for all the developers to use.
https://github.com/MTDEV-CM7
https://github.com/MTDEV-CM10
https://github.com/vmobi-triumph
https://github.com/MTDEV-KERNEL
https://github.com/MTDEV-MIUIv4
https://github.com/MTCM9
https://github.com/MTCM10
https://github.com/HTCCM9
https://github.com/HTCCM10
https://github.com/HTCStarShip
https://github.com/HTCUbuntu
https://github.com/vmobi-shooter
https://github.com/vmobi-gogh
These days have been keeping everything under Starship-Android.
https://github.com/Starship-Android
Have 2 other members listed who I had worked with in the past but has otherwise been a solo organization with one of the other members who decided on going with the Moto X and Verizon over the N5 and showed little interest in his 2012 version of the N7 as it was intended for being a Nexus only device line up and the second being my Kernel Guru from a few devices back who mainly joined to help me out with a few things but ultimately what I am getting around to is this is the first time working %100 solo. Have to say without having anyone to bounce off ideas and share findings with things definitely move much slower and take a bit of getting used to. Is also the reason for starting threads like this. Most of this stuff looking in the developer section appeared to be pretty common knowledge but having never worked from pure AOSP before was slowing down other development for about a week just to figure out what seemed like half the community had already known and with what probably took at the most 5 or 10 minutes of copying and pasting commits probably saved me a weekend of sifting through github and testing. I hope by creating a thread like this will be able to do the same for others.
Hi guys,
Anyone manage to fix RIL problems with master branch?
I also build AOSP roms so for sure i will hangout here
Sent from my AOSP on HammerHead using XDA Free mobile app
malcho said:
Hi guys,
Anyone manage to fix RIL problems with master branch?
I also build AOSP roms so for sure i will hangout here
Sent from my AOSP on HammerHead using XDA Free mobile app
Click to expand...
Click to collapse
Never tried.
ODEXED
i am successfully build cm12 with fully odexed. now i like to odex some prebuilt apk also but LOCAL_DEX_PREOPT=true not odexing prebuilt apk. can somebody help me? already DEX_PREOPT=true working fine.
soorajj said:
i am successfully build cm12 with fully odexed. now i like to odex some prebuilt apk also but LOCAL_DEX_PREOPT=true not odexing prebuilt apk. can somebody help me? already DEX_PREOPT=true working fine.
Click to expand...
Click to collapse
Why do you need to odex a prebuilt apk?
Not sure if what you want is even possible.
But if odexing your prebuilt apk is necessary then why not odex it then include the .odex with the prebuilt?
Lethargy said:
Why do you need to odex a prebuilt apk?
Not sure if what you want is even possible.
But if odexing your prebuilt apk is necessary then why not odex it then include the .odex with the prebuilt?
Click to expand...
Click to collapse
suppose i want to odex gapps. how to?
malcho said:
Hi guys,
Anyone manage to fix RIL problems with master branch?
I also build AOSP roms so for sure i will hangout here
Sent from my AOSP on HammerHead using XDA Free mobile app
Click to expand...
Click to collapse
Nothing so far, I downloaded the master and 5.0.2_r1 branches and have loaded both in meld for looking over differences but have not yet identified from the dif between the 2 branches that is responsible for ril working in release branch but not master. Still have allot to look over though still. Still have not found a decent explanation of the master branch to know if its recommended to build from but still just for Knowledge sake am interested in knowing. At first thought maybe apn's but not so sure with baseband also listed as unknown from my Master branch builds.
chairshot215 said:
Nothing so far, I downloaded the master and 5.0.2_r1 branches and have loaded both in meld for looking over differences but have not yet identified from the dif between the 2 branches that is responsible for ril working in release branch but not master. Still have allot to look over though still. Still have not found a decent explanation of the master branch to know if its recommended to build from but still just for Knowledge sake am interested in knowing. At first thought maybe apn's but not so sure with baseband also listed as unknown from my Master branch builds.
Click to expand...
Click to collapse
As far as i know all the patches goes to master branch then from this branch ,if they are ok,is distributed to lower branches.I also didn't find info why is named as 5.0.50.50.I will try to investigate this ril problem
malcho said:
As far as i know all the patches goes to master branch then from this branch ,if they are ok,is distributed to lower branches.I also didn't find info why is named as 5.0.50.50.I will try to investigate this ril problem
Click to expand...
Click to collapse
Thanks will definitely update the Op with any findings. Was very surprised to find the thread again as it has now been moved 4 times by 4 different Mods, some bounce it to general Q&A and then is bounced back here by another. I understand its not comprised of the most advanced development topics but with that said is still way more advanced than the topics being discussed by general users over in the general Q&A section. I had just thought it would be a nice one stop place for learning the basics of AOSP development. With the constant moving and scolding messages being received one would think the threads very existence is up there with crossing the streams and threatens the existence of Android development.
@chairshot215 Thank you for starting this thread. Thank you @Lethargy for all of your insight. I like to do my own perosnal builds every once in a while for my nexus devices. What I have observed over the years is that the Master Branch will sometimes have funky version numbers like you have described. One thing to consider is what @malcho mentioned. If all commits indeed go there first before the respective branches(although this may not entirely be the case), then it is likely that some things may be broken in the master branch from time to time, hence the ril problem. I think with the galaxy nexus I ended up running into issues from time to time with the master branch, and from there learned to build for specific branches/tags. For instance, there are times when items within a specific branch will be ahead of master in some areas and behind it in others, as in this link to platform_build for lollipop release https://github.com/android/platform_build/tree/lollipop-release. So with that, it is probably in our best interests to just use specific branches.
Milly7 said:
@chairshot215 Thank you for starting this thread. Thank you @Lethargy for all of your insight. I like to do my own perosnal builds every once in a while for my nexus devices. What I have observed over the years is that the Master Branch will sometimes have funky version numbers like you have described. One thing to consider is what @malcho mentioned. If all commits indeed go there first before the respective branches(although this may not entirely be the case), then it is likely that some things may be broken in the master branch from time to time, hence the ril problem. I think with the galaxy nexus I ended up running into issues from time to time with the master branch, and from there learned to build for specific branches/tags. For instance, there are times when items within a specific branch will be ahead of master in some areas and behind it in others, as in this link to platform_build for lollipop release https://github.com/android/platform_build/tree/lollipop-release. So with that, it is probably in our best interests to just use specific branches.
Click to expand...
Click to collapse
Thanks for the response and have definitely learned its better building from branches with a release tag. Still very curious why and how the branches are structured so thanks for the explanations.
Way totally off topic for the thread but landed a brand new SSD and decided to install everything fresh. After everything was set back up and wanted to start building I ran my usual,
-j'grep 'processor' /proc/cpuinfo | wc -l'
a very old habit before fully understanding what number to use after -j so used grep to figure it out based on Googles recommendation. The command did not work so removed the grep and just made it -j4 but also with 0 success. At first just figued I missed somthing setting everything back up and "make" is just not working but wrong again as running "make" command without -j of any number works just fine.
Also tried this with CM12 as I am doing 2 versions of my Starship Rom. One from AOSP and one using CM. Figured AOSP would be special for Nexus users why also having a version for CM I can make most changes by adding a Starship Device Tree could easily port the Rom to any device running CM supported or not.
https://github.com/Starship-Android/android_device_starship-common/tree/cm-12.0
Also found why compiling CM that -j also results in an error
Invalid lunch combo: cm_hammerhead--j4
No such item in brunch menu. Try 'breakfast'
So far have not found anything using the Google Box so figured may as well ask. If have not figured out by now I have no shame in asking questions. Oddly enough that is for things that are probably relatively simple. Took a better part of a week figuring out how to start CM using the Now Launcher and setting up init.d bash scripts for moving around and replacing libs after learning the Gapps package includes libs that will not work so the solution needed to be that the CM Gapps package libs needed to be replaced with either stock or libs pulled after installing the Now Launcher from the Play Store after flashing Gapps and the Rom staring. Also then what if user updates and wipes the system partition after the new and updated llibs have been moved into place. Anyhow point of story is things like this I will just figure out without bothering anyone but for the cant believe I need to stop what I am working on to figure out something most likely very simple and can be answered with very little time spent I have no shame in just asking. Not that someone else’s time is less important but like I have mentioned before is frustrating just after spending hours or days figuring out something asked in dozens of threads is just frustrating getting caught up or loosing momentum and thought processes over something so simple there are little resources available. Also I assume most devs have the same experience when you have an idea or thought behind resolving an issue that once you stop and change direction it just sometimes never comes back and that short time you had I guess can be called an epiphany is gone once going back. Otherwise thats how I justify asking dumb ars questions.

[REQUEST] Desire 510 Rom Development Guide

Hey, as alot of us know many people have left this phone and moved on to the cooler more exciting phones. and are busy with life.....id like to request a guide for the ones that would like to make some creation and learn how to build...for the love of this phone ^-^and that have some knowledge atleast
Xendrix said:
Hey, as alot of us know many people have left this phone and moved on to the cooler more exciting phones. and are busy with life.....id like to request a guide for the ones that would like to make some creation and learn how to build...for the love of this phone ^-^and that have some knowledge atleast
Click to expand...
Click to collapse
http://forum.xda-developers.com/android/software/guide-build-port-miui-rom-to-device-t3250984 I tried with this but I was getting to much rejects and I couldn't fix them all by my self. Most likely because I was trying to patch the stock 64 bit. But you have the CM, RaptorROM that are more vanilla like. If you are lucky you should be getting less rejects then me. :highfive:
denny.hell said:
http://forum.xda-developers.com/android/software/guide-build-port-miui-rom-to-device-t3250984 I tried with this but I was getting to much rejects and I couldn't fix them all by my self. Most likely because I was trying to patch the stock 64 bit. But you have the CM, RaptorROM that are more vanilla like. If you are lucky you should be getting less rejects then me. :highfive:
Click to expand...
Click to collapse
Ok cool i just pulled that same guide up, ill try it out and see where i get!
Sent from my iPhone using Tapatalk
Xendrix said:
Ok cool i just pulled that same guide up, ill try it out and see where i get!
Sent from my iPhone using Tapatalk
Click to expand...
Click to collapse
If you need help with the rejects just ask. I'm sure I could spare some time to help out
denny.hell said:
http://forum.xda-developers.com/android/software/guide-build-port-miui-rom-to-device-t3250984 I tried with this but I was getting to much rejects and I couldn't fix them all by my self. Most likely because I was trying to patch the stock 64 bit. But you have the CM, RaptorROM that are more vanilla like. If you are lucky you should be getting less rejects then me. :highfive:
Click to expand...
Click to collapse
That was really not all that great of an instruction on how to get started with rom building because for 1 unless you have a really super fast computer trying to do that in a VMWARE is going to take forever because the first compile and build takes hours upon hours I'm not kidding when I said you needed to download the entire CyanogenMod or AOSP source code and apparently from all the changes people have made its up over 13GB which is huge mind you the first build is going to give quite a few errors which you'll need to fix by going into your github and making changes to the specific file that needs changing and then repo sync or just change it on your local computer first then push it to github.. You did fork the device tree to your own github right? Then you have to download the device tree source to your local pc in order to even begin building anything. They also need to be in the correct spot by the way or the build is gonna throw an error that it can't find / or so and so doesn't exist.. By the way the 3 device tree files you're gonna need are "Device, Vendor and Kernel.."..
https://wiki.cyanogenmod.org/w/Development
https://wiki.cyanogenmod.org/w/Doc:_porting_intro
MrMike2182 said:
That was really not all that great of an instruction on how to get started with rom building because for 1 unless you have a really super fast computer trying to do that in a VMWARE is going to take forever because the first compile and build takes hours upon hours I'm not kidding when I said you needed to download the entire CyanogenMod or AOSP source code and apparently from all the changes people have made its up over 13GB which is huge mind you the first build is going to give quite a few errors which you'll need to fix by going into your github and making changes to the specific file that needs changing and then repo sync or just change it on your local computer first then push it to github.. You did fork the device tree to your own github right? Then you have to download the device tree source to your local pc in order to even begin building anything. They also need to be in the correct spot by the way or the build is gonna throw an error that it can't find / or so and so doesn't exist.. By the way the 3 device tree files you're gonna need are "Device, Vendor and Kernel.."..
https://wiki.cyanogenmod.org/w/Development
https://wiki.cyanogenmod.org/w/Doc:_porting_intro
Click to expand...
Click to collapse
Yes, everything you said is correct. I was only giving him a starting point. I know that porting, in this case patching, is a lot more easier than building, if done properly. If he wants to build and to learn a lot of stuff I personally advice him to follow your advice.
But in the end it's up to him. At least now he has two starting points. :highfive:
denny.hell said:
Yes, everything you said is correct. I was only giving him a starting point. I know that porting, in this case patching, is a lot more easier than building, if done properly. If he wants to build and to learn a lot of stuff I personally advice him to follow your advice.
But in the end it's up to him. At least now he has two starting points. :highfive:
Click to expand...
Click to collapse
That's true, 2 starting points is better than none.. I don't necessarily like "patching" others work because you never really know how they made it or if it has problems which is why I just start from scratch.
Yes starting from scratch was initially what i wanted but i looked around on XDA university for a week and that helped get me to learn about setting up Vm, installing android sdk through terminal ETC and repo init repo sync, downloading repositories and other source codes.....BUT my thing is wanting to learn how patch errors and need more on hands experience for setting up build environment
Sent from my iPhone using Tapatalk

Categories

Resources