Compiling Android + Kernel from Source. - Desire Android Development

Hi there,
Now, I understand that there's a thread or two and a few web pages directed at compiling Android and its kernel from source.
However, the thread in question is months old, and didn't fully explain the process.
As for the web pages, they are mostly outdated and don't include enough information, not to mention desire specific instructions.
I think that, properly explained, building Android shouldn't be daunting, and everyone should be able to attempt it, if they wanted to.
So, I hope to compose a comprehensive guide on how to do just that.
The problem is that I myself have not been able to put enough instructions together to be able to complete a build. And there is no point digging up old threads.
So, If anyone who knows the ropes (that is, compiling android and a kernel from source) would be willing to lead the way, I'd happily turn it into an easy to understand guide.
Josh.

fllash said:
Hi there,
Now, I understand that there's a thread or two and a few web pages directed at compiling Android and its kernel from source.
However, the thread in question is months old, and didn't fully explain the process.
As for the web pages, they are mostly outdated and don't include enough information, not to mention desire specific instructions.
I think that, properly explained, building Android shouldn't be daunting, and everyone should be able to attempt it, if they wanted to.
So, I hope to compose a comprehensive guide on how to do just that.
The problem is that I myself have not been able to put enough instructions together to be able to complete a build. And there is no point digging up old threads.
So, If anyone who knows the ropes (that is, compiling android and a kernel from source) would be willing to lead the way, I'd happily turn it into an easy to understand guide.
Josh.
Click to expand...
Click to collapse
I followed this guide here and successfully compiled a modified HTC Kernel and I had very little Linux and Android experience.
Obviously instead of cloning the Cyanogen git, you just use the gits you wish to compile

Mekrel said:
I followed this guide here and successfully compiled a modified HTC Kernel and I had very little Linux and Android experience.
Obviously instead of cloning the Cyanogen git, you just use the gits you wish to compile
Click to expand...
Click to collapse
Thanks for the link
Though i don't fully understand the whole 'git' thing. Where do i find them? And how to i know which ones are the ones i want to use?
Josh
EDIT: Also, how do you 'edit' the kernel (i imagine it is somewhat like make menuconfig?). Also:
- Are these sense kernels?
- How do you add modules like OC and UV?

fllash said:
Thanks for the link
Though i don't fully understand the whole 'git' thing. Where do i find them? And how to i know which ones are the ones i want to use?
Josh
EDIT: Also, how do you 'edit' the kernel (i imagine it is somewhat like make menuconfig?). Also:
- Are these sense kernels?
- How do you add modules like OC and UV?
Click to expand...
Click to collapse
A git is a repository for source code, developers upload their source code there and can commit changes. The commit can allow descriptions of what was changed and also details the files changed.
The git system allows other people to add to the source if they have permission, or allows others to read the changes and download the source code.
Git links are usually posted by people who release software, as Android is GPL licensed so people have to release their source code if they're distributing their work.
Editing the kernel, take a look into the git and the commits and it will show you which files were changed and how exactly they were changed. That will give you the best understanding.
UV/OC is done by changing the acpu table in the architectures files and changing the minimum/maximum voltage figures in the board_bravo.c file.
The Cyanogen kernels are not Sense kernels no, it's a modified Google Kernel.

Thanks for the explanation. I followed the guide and built the rom, and it works (always a plus )
Now, the next thing is the kernel. How do I build a kernel with the CM tweaks integrated? I understand that all i would be doing is rebuilding the same one that is already installed, but im doing it to learn.
So, if i synced the GIT, does that include the CyanogenMOD kernel source? If it does, where is it and how do i rebuild it. If not, where do i find it?
Thanks,
Josh.

Related

[Q] Original G1 firmwares

I am looking for all the original HTC Dream firmwares, for ROM cooking purposes, but I couldn't find any (except the 1.5 and 1.6 ADP1 updates which aren't enough for me, I want 2.0, 2.1 and maybe 2.2 too).
Please do not misunderstand me, I know there are only a few limited releases for this phone (no official FroYo/Éclair, etc), under original I meant a clean, unmodified firmware (max modification is any app2sd, root). Is there any such file?
I'm very desperate to start cooking (and do not base it on any recent release, like CyanogenMod, or anything else. Of course they are very good, I appreciate all the modders' work, that's why I don't want to make anything based on it - it is like stealing their work. I know how it feels, as I am a Symbian developer for a while - I've been stolen, remade, etc, many times).
Honestly, I think CyanogenMod is the closest you're gonna get to a "vanilla" G1 Eclair/Froyo ROM.
There are plenty of people that base their ROM's off Cyanogen. Obviously I can't speak for him, but I don't think he minds people using his ROM's as long as they give him credit.
You could grab CyanogenMod and remove the extra apps he's put in there like ADWLauncher and that would be about as close to a stock ROM as you'll get, I think.
Here you go
http://android-dls.com/wiki/index.php?title=OTA_Updates
There is not a release from HTC that is for the G1 (ADP1) beyond 1.6. This is because 2.x required more space on /system then the G1 has. that is why the eclair/froyo versions of CyanogenMod require dangerSPL.
If you want a vanilla version of android, you will have to build from source, which you should do any how. You want to get the source from AOSP. But honestly, the work that the CM team has done makes the CM build a better option. Like the addition of FLAC support, for example. All of the source to CM is available on github, so you could, pull from AOSP and CM if you wanted.
CM is anything BUT stock. It is huge, with lots of stuff thrown in. Everything including the kitchen sink.
Another much more "basic" 2.2 to start with is Jubeh's: http://forum.xda-developers.com/showthread.php?t=709201
Note that BOTH have expressed that they have no problem with anyone building on their work and ask only for respectful citation of their work.
lbcoder said:
CM is anything BUT stock. It is huge, with lots of stuff thrown in. Everything including the kitchen sink.
Another much more "basic" 2.2 to start with is Jubeh's: http://forum.xda-developers.com/showthread.php?t=709201
Note that BOTH have expressed that they have no problem with anyone building on their work and ask only for respectful citation of their work.
Click to expand...
Click to collapse
exactly
you could also check out my AOSP roms in my 4shared box
I understand that they do not mind, but I (we) plan to create an Online ROM Kitchen, from base, and for this, I need the most basic firmwares. Probably I will build from source (though there is no proper guide how to build for a specific device, because G1 (dream) is in the added phone's folder (src/device/htc/dream/), and I could not find any guide to build it :S), but that is the last option (mostly because for Ubuntu, Java JDK 5 is not available anymore, and it IS required to build).
One more question: the Cyanogen source, is it the whole stuff I need to build a basic image, or do I need the AOSP too?
fonix232 said:
(mostly because for Ubuntu, Java JDK 5 is not available anymore, and it IS required to build).
Click to expand...
Click to collapse
I believe it is still available, you just need to change your sources list in ubuntu to get it Try this
fonix232 said:
I understand that they do not mind, but I (we) plan to create an Online ROM Kitchen, from base, and for this, I need the most basic firmwares. Probably I will build from source (though there is no proper guide how to build for a specific device, because G1 (dream) is in the added phone's folder (src/device/htc/dream/), and I could not find any guide to build it :S), but that is the last option (mostly because for Ubuntu, Java JDK 5 is not available anymore, and it IS required to build).
One more question: the Cyanogen source, is it the whole stuff I need to build a basic image, or do I need the AOSP too?
Click to expand...
Click to collapse
sdk is now compatible with jdk 6
you can install jdk 5 on ubuntu 9.10+
add
deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiverse
deb http://us.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse
to your repositories
then
Code:
sudo apt-get update
sudo apt-get install sun-java5-jdk
fonix232 said:
(though there is no proper guide how to build for a specific device, because G1 (dream) is in the added phone's folder (src/device/htc/dream/), and I could not find any guide to build it :S)
Click to expand...
Click to collapse
Did you do a google search?
http://source.android.com/source/building-dream.html
** note that AOSP 2.2 will build for dream just fine, some things may have changed since that guide, and some stuff will be quite broken. That is why I point you at Jubeh's build -- it is close to stock, but fixed/functional.
but that is the last option (mostly because for Ubuntu, Java JDK 5 is not available anymore, and it IS required to build).
Click to expand...
Click to collapse
Sun/oracle still provides JDK5 from their legacy site... or as mentioned, ubuntu has it still in repo.
One more question: the Cyanogen source, is it the whole stuff I need to build a basic image, or do I need the AOSP too?
Click to expand...
Click to collapse
As I said, you can't build a basic image from CM source -- it simply isn't BASIC, it is as mod as you get.
It is enough to build a full CM build, however....
lbcoder said:
Did you do a google search?
http://source.android.com/source/building-dream.html
** note that AOSP 2.2 will build for dream just fine, some things may have changed since that guide, and some stuff will be quite broken. That is why I point you at Jubeh's build -- it is close to stock, but fixed/functional.
Click to expand...
Click to collapse
Yes I did, I was hoping in a much more modder-made step-by-step tutorial (google was always a bit foggy with their build instructions).
Sun/oracle still provides JDK5 from their legacy site... or as mentioned, ubuntu has it still in repo.
Click to expand...
Click to collapse
Tried to install it over Lucid Lynx (10.04) but both Synaptic both apt-get said the given package does not exist.
As I said, you can't build a basic image from CM source -- it simply isn't BASIC, it is as mod as you get.
It is enough to build a full CM build, however....
Click to expand...
Click to collapse
Under "basic image" I meant a proper, final, working image of CyanogenMod. But if it is enough, I will try with it, thank you.
fonix232 said:
Yes I did, I was hoping in a much more modder-made step-by-step tutorial (google was always a bit foggy with their build instructions).
Tried to install it over Lucid Lynx (10.04) but both Synaptic both apt-get said the given package does not exist.
Under "basic image" I meant a proper, final, working image of CyanogenMod. But if it is enough, I will try with it, thank you.
Click to expand...
Click to collapse
yawn
http://www.oracle.com/technetwork/java/javase/system-configurations-139801.html
or just add the jaunty repos..
AND as I said, you can use JDK 6 which is in 10.04..
http://developer.android.com/sdk/index.html#quickstart
this is all very basic stuff, maybe you should rethink what you want to do and just kang an AOSP FroYo like some other 'devs' did
Firerat said:
yawn
http://www.oracle.com/technetwork/java/javase/system-configurations-139801.html
or just add the jaunty repos..
Click to expand...
Click to collapse
Yea, saw your post too late, sorry
AND as I said, you can use JDK 6 which is in 10.04..
http://developer.android.com/sdk/index.html#quickstart
this is all very basic stuff, maybe you should rethink what you want to do and just kang an AOSP FroYo like some other 'devs' did
Click to expand...
Click to collapse
For the SDK maybe, but I don't want to develop applications, but to understand source compiling, learn how to create ROMs (and maybe automate it), and such things. I never said I'm a developer - I just want to be one. And that will not happen soon, as I have to learn a lot, even though I was following Android from the very beginning.

I5800 source code

Nearly days I get an open souce code of i5800 and I just a new one in the compling world,so I hope someone can help me find something useful in configuring the code or some books useful.
If you have a qq number and our time are not rushed ,we can communicate in this way.(No facebook or twitter in china....How big the wall!)
My QQ number is 361180509
not sure I understood what you mean, do you have access to newer (froyo) kernel sources for I5800? if so, please do share
eclair kernel source is on opensource.samsung.com, and they compile just fine with the official Android toolkit, but Samsung's changes for Froyo are nowhere to be found (a few modules missing, touchscreen and accelerometer being the most notable), and the kernel doesn't compile anyway.
ze-m0n5t3r said:
not sure I understood what you mean, do you have access to newer (froyo) kernel sources for I5800? if so, please do share
eclair kernel source is on opensource.samsung.com, and they compile just fine with the official Android toolkit, but Samsung's changes for Froyo are nowhere to be found (a few modules missing, touchscreen and accelerometer being the most notable), and the kernel doesn't compile anyway.
Click to expand...
Click to collapse
Not sure if i get you right, do you say it does, or it does not compile? If not, we should request propper sources from Samsung.
sorry,I just don't find the offical source code website before posting this.Cause I just a freshman and I haven't got my PC....
maybe I'll compile the source code later.Sorry to make these mistakes.And I'm chnese.So my english is poor.....
Sent from my GT-I5800 using XDA App
FadeFx said:
Not sure if i get you right, do you say it does, or it does not compile? If not, we should request propper sources from Samsung.
Click to expand...
Click to collapse
eclair sources compile just fine, both with my system cross-compiling toolkit (arm-android-linux-gnueabi managed on gentoo by crossdev) and with the prebuilt one that comes with the Android platform
I might give it a try to actually boot it (but I would need to construct an initramfs, and it's a lot of work, and I kinda need to get back to "proper" work, I was consumed by Android during the last 3 weeks since I got the phone )
ze-m0n5t3r said:
eclair sources compile just fine, both with my system cross-compiling toolkit (arm-android-linux-gnueabi managed on gentoo by crossdev) and with the prebuilt one that comes with the Android platform
I might give it a try to actually boot it (but I would need to construct an initramfs, and it's a lot of work, and I kinda need to get back to "proper" work, I was consumed by Android during the last 3 weeks since I got the phone )
Click to expand...
Click to collapse
You can use the initramfs from Eclair.. I'm assuming you're talking about 2.1.. since 2.2 sources aren't out yet for this phone.
Link for the initramfs for Eclair is here: http://www.multiupload.com/U6GB5BB3HI
This is the JK1 I think - or whatever eclair rom I posted up previously

Essential prerequisites for a Developer to release a ROM in the DEVELOPMENT section

Note to Mods..
Kindly dont move it to the General section. This thread is about Rom development, and discusses a serious issue about the future of development in the Desire section, and whether we devs should continue to work here..
Some of us are getting irritated at this absolute proliferation of "me-too" roms..Roms which are apparently exact copies of others out there, taking all the files from them, deleting a few files (cut-copy-paste), and releasing it as the new "dev"'s own work..
In this context, I'd like to propose a list of questions a wanna-be Rom dev should ask himself/herself before starting a Rom thread here.
Can you smali and baksmali files individually?
Are you familiar with Edify and Amend?
Do you know about Kernel ramdisk loading, bootclasses and MTD layouts?
Are you familiar with adb and fastboot commands and can you offer support to endusers who have problem with this?
Can you debug Edify code and built an updater-script from scratch without wholly relying on the dsixda kitchen?
Do you know how to modify frameworks, system apps and jars and debug their errors?
Are you familiar with how to port roms between devices? (applicable only if you intend to release a port)
Have you significantly modified a Rom to add new and useful content?
Have you contributed uniquely to the Rom, and not just made a cocktail of features already made by devs?
Can you write/at least understand bash scripts?
Can you compile your own kernel from source code?
The items in Bold are more important..
If the answer to most of these questions is Yes, go ahead, we'd love to have your Rom here, as you most certainly have what it takes to release a finished product.. If not, think thrice before posting a Rom. We cant prevent you from posting in the Dev section, but be forewarned that it might be an invitation for flaming! If your purpose in posting a Rom is to learn development yourself, and you've made a Rom which uses >=80 % of another Dev's work, it may be better to release it as a "ROM-Mod" and work on it further,.
Another suggestion is to use the prefix [ROM] for something which is built originally, and [Rom-MOD] for others with minimal changes from a source Rom, and the latter should give proper credits to the source...
Before posting a new Rom, ask yourself the following questions:
What is the difference between your Rom and the Base?
Have you done active development, other than delete a few files/mix a few files/themes?
Is there a significant difference between your Rom and other Roms out there/your source, in terms of new features added?
The following is a list of items which are not considered development:
Using another Dev's original ROM as your base, where you :
Only add mods from yet another developer/rom
Do not include any actual development done by you in the form of code in bash scripts/updater-script/compiled binaries which add some new functionality to the original Rom
Only mix the source Rom with themes/apps created by another developer
Only remove/add some apps from the source rom, in the process reducing its size
In case the difference between the base Rom and the new Rom is very marginal, but includes a significant development on the part of the new dev, the change from base rom should be clearly documented as part of a changelog attached in the thread OP.
If your purpose in starting a Rom thread is to study to develop, you can clear questions related to development by using the Developer Google plus Huddle maintained here
What do you guys think? Should we suggest to the mod team to append this to the list of rules for posting? Feel free to add your suggestions/criticism/opinion
Droidzone said:
Note to Mods..
Kindly dont move it to the General section. This thread is about Rom development, and discusses a serious issue about the future of development in the Desire section, and whether we devs should continue to work here..
Some of us are getting irritated at this absolute proliferation of "me-too" roms..Roms which are apparently exact copies of others out there, taking all the files from them, deleting a few files (cut-copy-paste), and releasing it as the new "dev"'s own work..
In this context, I'd like to propose a list of questions a wanna-be Rom dev should ask before starting a Rom thread here.
Can you smali and baksmali files individually?
Are you familiar with Edify and Amend?
Do you know about Kernel ramdisk loading, bootclasses and MTD layouts?
Are you familiar with adb and fastboot commands and can you offer support to endusers who have problem with this?
Can you debug Edify code and built an updater-script from scratch without wholly relying on the dsixda kitchen?
Do you know how to modify fameworks, system apps and jars and debug their errors?
Are you familiar with how to port roms between devices?
Have you significantly modified a Rom to add new and useful content?
Have you contributed uniquely to the Rom, and not just made a cocktail of features already made by devs?
Can you write/at least understand bash scripts?
Can you compile your own kernel from source code?
If the answer to most of these questions is Yes, go ahead, we'd love to have your Rom here.. If not, think thrice before posting a Rom. We cant prevent you from posting in the Dev section, but be forewarned that it might be an invitation for flaming!
What do you guys think? Should we suggest to the mod team to append this to the list of rules for posting? Feel free to add your suggestions/criticism/opinion
Click to expand...
Click to collapse
Droidzone, your totally right, there are like 3-4 same roms ... This is jus madness... Get those copyers out now ;o
Greetz
Sent from my HTC Runnymede using XDA App
Totally agree with the statement. There are too many Roms that are 99% the same which makes it not easy to choose one, especially for people with not much experience relating to Roms. On the other side, don't make those "rules" too strict as this is a possible entry barrier for new Rom developers and would limit the varierity.
chrismast said:
Totally agree with the statement. There are too many Roms that are 99% the same which makes it not easy to choose one, especially for people with not much experience relating to Roms. On the other side, don't make those "rules" too strict as this is a possible entry barrier for new Rom developers and would limit the varierity.
Click to expand...
Click to collapse
Totally agree.
Agree 100% , if your just 'adjusting' or 'modding' a rom place the file in a post on original Rom thread , if its a good mod I'm sure users will apteciate it and the original dev may put on op or even enhance the official rom from it.
This way those would be devs will gain respect and learn the trade , without annoying everyone with 'copies' .
Otherwise we could set up a 'mods' section on the forumn to move all copied roms to, would clear the clutter.
Cheers all devs
Sent from my HTC Desire using xda premium
AGREED ...
I am leaning towards learning ROM development myself but there is so much to learn and because i have this interest i have downloaded Ubuntu 10.04 and i am starting to learn how that works and i'll take it from there.
I mod almost every ROM i use before i flash it and trust me 7zip and notepad++ dont make you a DEV, YES it is always nice to see new DEVs and work being released but like back in the froyo days there was 3 Sense 1.9 ROMs that i tested, namely AuraxTSense, LeeDroid and Startburst. Even though they seemed the same they are very different and unique...
Now if you look @ AcedOff, Aurora and CoolAces3D, they are all Cools work and are no different and suffer from the same bugs. All these ROMs are creating is congestion.
Or we could all just use our common sense.
Got to be careful of making a l knee jerk reaction to one or two roms. I found the new stock gingerbread very useful, and that cooker was not a Dev as described by the rules above.
chrismast said:
Totally agree with the statement. There are too many Roms that are 99% the same which makes it not easy to choose one, especially for people with not much experience relating to Roms. On the other side, don't make those "rules" too strict as this is a possible entry barrier for new Rom developers and would limit the varierity.
Click to expand...
Click to collapse
100% agree.
I started messing around with redux source code, intergrated android 2.3.5 source into it, modified jar files, added code, removed code and compiled a unique ROM. I can debug it and can answer yes to maybe half of those questions...
Can you smali and baksmali files individually? Never tried
Are you familiar with Edify and Amend? yes
Do you know about Kernel ramdisk loading, bootclasses and MTD layouts?Maybe, No, Yes
Are you familiar with adb and fastboot commands and can you offer support to endusers who have problem with this? Yes
Can you debug Edify code and built an updater-script from scratch without wholly relying on the dsixda kitchen? Probably
Do you know how to modify frameworks, system apps and jars and debug their errors? Yes
Are you familiar with how to port roms between devices? Sort of
Have you significantly modified a Rom to add new and useful content? Yes
Have you contributed uniquely to the Rom, and not just made a cocktail of features already made by devs? Not really, I haven't invented my own mods
Can you write/at least understand bash scripts? Partly
Can you compile your own kernel from source code? Probably, Never tried. Can compile ROMs and Recoveries.
Click to expand...
Click to collapse
I can completely support my ROM and it isn't a simple clone, but too strict would create a barrier for me at least.
But I am sick to death of seeing people with "recognised Developer" status for simply running someone else's ROM through dsixda kitchen and selecting all the options - Surely this belittles the whole recognition?!
Perhaps the question should be:
Did you install someone elses rom, flash a couple of mods then run the backup through dsixda kitchen?
backfromthestorm said:
Got to be careful of making a l knee jerk reaction to one or two roms. I found the new stock gingerbread very useful, and that cooker was not a Dev as described by the rules above.
Click to expand...
Click to collapse
The new stock gingerbread could have been had from teppic's thread posted many weeks ago (with additional mods). In fact, any newbie could easily have made it by running the zip available from HTC's site through dsixda's kitchen, which is whom the kitchen is intended for..
@3f1f37
Before the start again: But AceSMod007-3D is from me and not from coolexe! Otherwise it would not have been unlocked again my thread!!
rootSU said:
100% agree.
I started messing around with redux source code, intergrated android 2.3.5 source into it, modified jar files, added code, removed code and compiled a unique ROM. I can debug it and can answer yes to maybe half of those questions...
I can completely support my ROM and it isn't a simple clone, but too strict would create a barrier for me at least.
But I am sick to death of seeing people with "recognised Developer" status for simply running someone else's ROM through dsixda kitchen and selecting all the options - Surely this belittles the whole recognition?!
Click to expand...
Click to collapse
@rootsu, yours isnt a clone of anything, and if anything deserves Rom status, it's a Rom built from Android source and modified periodically..
I dont mean the dev should satisfy all these criteria at the time of his first build..
At least he should have done original development of his own..which includes things other than cut-copy-paste and changing hboot/fitting a rom built by another dev on another partition layout..
In any case, these are just suggestions...Maybe it could be a guide for future devs to let them know that blatant copying of someone else's work is not acceptable to the community at large
michaelm_007 said:
@3f1f37
Before the start again: But AceSMod007-3D is from me and not from coolexe! Otherwise it would not have been unlocked again my thread!!
Click to expand...
Click to collapse
Yo Micheal
I was in no way taking a shot at your work buddy, i am refering to ACED OFF!!! and not your AcesMod007.
I know there is a differences between you work and coolexe's, actually i commend you for your time and effort. You and cool remind of Baadnwz and Robocik from 1st half of this year, when the Sense 2.1/3.0 hybrids were coming out. They had similar features but were unique, this applies to both your work and cools.
To further put a feather in your hat, i am im-patiently waiting for your SagasMod007-3D to come out of beta as i follow your work very closely
You could be in danger of alienating noobs who come on here for advise, who want to learn to develop a rom from source or from a ruu. Surely the way to start to learn is from the start!
Not everybody has the knowledge like u Droidzone, but u never had it once either. You learn by doing.
I said im not a dev, i did mine cus there wasn't one out there that fitted for me.Now if i think that then somebody else might, so it helps them to.Surely this is where u start to learn. Granted if there was a rom somebody posted exactly like mine id be like wtf, so i do understand.
Honestly, the dev section is not (imho) for newbies who want to learn to develop, but for developers who have their own contribution to add to the forum..In other words, something genuinely developed by them, and not using the kitchen to select 1,2,3 and make a zip..
For learning to develop, why not make a thread in the General/Q&A section and make a collaborative effort? Then once there is an actual developed product, anyone can release it here.. Agreed, there was a time when I knew nought.. But by the time I released my first rom, I did know enough..Look at people like rootsu who were helping people out for years and learning the tricks of the trade, so to speak, before releasing their first product?
I fail to understand how anyone can call using a bash script and selecting a couple of options as development.. dsixda's kitchen, in dsixda's own words, is intended for newbies to modify a rom for personal use, and in his own words: 'dont expect the kitchen to transform you into a developer overnight'..
Mods are mods, and original roms are that.. Maybe mods can be released in the General section..
dan281082 said:
You could be in danger of alienating noobs who come on here for advise, who want to learn to develop a rom from source or from a ruu. Surely the way to start to learn is from the start!
Not everybody has the knowledge like u Droidzone, but u never had it once either. You learn by doing.
I said im not a dev, i did mine cus there wasn't one out there that fitted for me.Now if i think that then somebody else might, so it helps them to.Surely this is where u start to learn. Granted if there was a rom somebody posted exactly like mine id be like wtf, so i do understand.
Click to expand...
Click to collapse
For me, using dsixda to make stock roms is ok, so long as there arent loads of them available or they offer something different.
My personal issue (without naming names) is someone taking an AOSP ROM or even a Sense Port that is already released by a dev, runnig it through dsixda to add nanotext editor, a2sd+, zipalign or someone else's kernel, then release it as their own ROM and call themselves "Dev".
I personally do not see myself as a Dev. I couldn't take a ROM from another device, and make it work on the desire, or build a ROM for another device without the vendor and device directories from a working repository. I think I am a compiler at best. I can take source code from here and there, put it all together and compile a working ROM.
If I can't call myself a dev but people who take other people's roms and run through the kitchen then call themselves a dev, theres something wrong there. And then XDA supports them with "recognised developer" status
EDIT> @ Droidzone - I would definitely support a Development Q&A Subforum here. I can't believe we haven't got one. I'm sure devs would visit that to help, rather than n00b central (i.e Q&A)
i do agree there droidzone, a dedicated place for people to learn is what this needs.
if it had the support from people like rootsu(who has helped me no end) then it can benefit everybody.
But the support needs to be there not just from the odd one or two.
Droidzone said:
The new stock gingerbread could have been had from teppic's thread posted many weeks ago (with additional mods). In fact, any newbie could easily have made it by running the zip available from HTC's site through dsixda's kitchen, which is whom the kitchen is intended for..
Click to expand...
Click to collapse
I don't have a PC. So its been very useful. and not something I could of easily done. Or have the time. Its a nice upgrade. We shouldn't limit what's available to the rules of the first post.
Can a mod move this thread, its in the wrong section lol only messing, i can see your point of view, you bust your balls to make a rom and fix it and then someone adds a few tweaks and mas it their own, and they think cause they thank you, it makes everything ok, and its not being selfish on your part, you take another rom from a phone that isnt ours, transform that rom so that it works on our phone, to me that is amazing, you put all that effort in and then you must be so proud when you hav finished and majority of people are happy, i can ee how it hurts when someone changes a few things, problem is, youll never win, how many times do things get posted cause someone cant search, anyway to all the devs, keep up the hard work because 99% of the world appreciate your work, dont let the 1% spoil it for the rest !
Sent from my Transformer TF101 using Tapatalk
ZeGuitarist said:
Or we could all just use our common sense.
Click to expand...
Click to collapse
This completely.

Dont know where to start

Hi every one I dont know where to start i want to make my own rom from source,build it,modify it etc.But i dont know where to start.I know how to build rom from source(learned it from the tutorial on source.android) but i dont know what do those codes mean.i searched on google but cant find an easy tutorial.If i build rom from source how do i make it work on my phone.How do i FIX bugs on my roms,modify it Help please
Check out the chef central section under android. There are a lot of great people working on making development accessible.
For a pure AOSP ROM you are going to have a bit more work, but be rewarded in the end. There is also cyanogenmod and other custom distributions you can build from source and modify.
If you are familiar with C and Java programming you can dig into the actual development more by writing apps or changing source code. If you don't you may want to start on that road. Other wise you will be basically cutting and pasting from everyone else, which doesn't get you any credit.
Themes are also a good place to start. There are lots of good guides in the theme section and people are willing to help if you ask nicely and appropriately.
I have done a bit of this foot work and come to the conclusion, I need to learn programming then come back to source. It is overwhelming to take on an entire operating system in a foreign language, especially when that language has to be perfect to function!
Good luck in your endeavors. Feel free to hit me up for the little knowledge I have!
Sent from my PC36100 using xda premium
But! where to learn
First i want to learn the basics of Rom
are you familiar with Java, C and C++? These are going to be very useful in understanding the "codes" as that is what they are written in. You are also going to have to build AOSP specific for your device, which will require adding your device to the device tree and extracting the necessary drivers and files that are specific to your device. Cyanogenmod has many devices already added to their github and you would simply clone the folder for your device, then build AOSP source and issue make using the device specific folder.
THIS is a helpful tool, and yes it will compile pure AOSP as well.
THIS is also a very helpful tutorial, and you can modify instructions to work for Gingerbread.
If you just want to learn to build and modify the source start with Cyanogenmod build from their source first. You can also build the kernel if you choose but that is a bit more complicated. After you have both of those building without errors then start making changes that you want to see.
The CM Wiki has some good info http://wiki.cyanogenmod.com/wiki/Building_from_source
http://wiki.cyanogenmod.com/wiki/Building_Kernel_from_source

[Question] Kernel Compilation for Modules

First post in the Dev section but this seemed to be the place to talk about kernel compilation and module development.
I have twice now, and am working on my third kernel compilation for the purposes of custom module building for the TF700 and the TF201.
The question I have has to do with the compilation process. Every time I have gone through this with the downloadable Asus Kernel zip I run in to several issues. Either missing references in code or portions that won't compile at all. Is this normal for kernel compilations? I would have thought that it would be fully compilable out of the box ( so to speak). Is it ASUS or just android/Linux in general that works out this way?
Is there a better way to do it? Should I use some generic source with the same version numbers? The current source is just not working at all. I am using an Ubuntu distro. Have the cross compile tools etc... but it just fails. I have already resolved two missing definition references and it just keeps on failing in new places
Hopefully this question doesn't offend developers. I have moved from WinPhone to here and want to better my understanding of how this should all work but need to start with some basics before I can make a meaningful contribution.
Thanks.
P.S... I looked and didn't find a "Compiling android kernels for dummies" book
hx4700 Killer said:
I looked and didn't find a "Compiling android kernels for dummies" book
Click to expand...
Click to collapse
"Dummies" doesn't write a book on kernel dev. Too wrapped up in telling people how to download iTunes.....
Use your "Google". And when you find it, Google XDA University.
There, you will find steps for setting a build environment and kernel and cross arm.
Understand, all kernels are different, but a good place to start. Plus, you learn how to use Google. An added bonus.
Oh... and... as an extra bonus, I will move this to Q & A, as this post has no development work attached. :silly:
MD
My question wasn't HOW to cross compile. I have done it.
My question is WHY are there so many errors that need correcting when compiling the ASUS downloadable kernels and if this is typical of the source from any device or just ASUS?
hx4700 Killer said:
The question I have has to do with the compilation process. Every time I have gone through this with the downloadable Asus Kernel zip I run in to several issues. Either missing references in code or portions that won't compile at all.
Click to expand...
Click to collapse
I had to fix exactly one pair of quotes vs. angle brackets somewhere in the RIL - get the patch pack from my kernel and apply the ril include fix. Then it should compile. If not, you are doing something wrong.
Can you post any links or names of everything ill need to get started on cross compiling a kernel for my tf700t I download the source and get my config.gz and am running a ubuntu distribution but if you could post a link to a tutorial that has detailed instructions that will work for the infinity that would be greatly appreciated thankyou
alexcass4 said:
Can you post any links or names of everything ill need to get started on cross compiling a kernel for my tf700t I download the source and get my config.gz and am running a ubuntu distribution but if you could post a link to a tutorial that has detailed instructions that will work for the infinity that would be greatly appreciated thankyou
Click to expand...
Click to collapse
Step 1: Get a suitable ARM toolchain. I can't help you here with Ubuntu because I'm using Gentoo and their crossdev tool (http://www.gentoo.org/proj/en/base/embedded/handbook/?part=1).
Step 2: Cross-compiling the kernel works just as for native kernels (make menuconfig, make), but you have to pass parameters to each make, e.g. make ARCH="arm" CROSS_COMPILE="arm-gentoo-linux-gnueabi-" (or whatever your toolchain is called)
Step 3: For the TF700-specific blob stuff I have written a detailed tutorial here: http://forum.xda-developers.com/showpost.php?p=36925180&postcount=4

Categories

Resources