Need help with kernel development - General Questions and Answers

I'm stuck following googles source documents as what to do next. I have download the source code as described here and I have done this "git clone https://android.googlesource.com/kernel/msm.git". I see the ".git" file in the working directory but I'm confused as to what to do next. Where are the kernel files? I dont see the files that I see here: https://android.googlesource.com/kernel/msm.git/+/android-msm-marlin-3.18-nougat-mr1. Maybe I am confused but I'm just not sure what to do next. Any help or info will be appreciated.

ducksauce88 said:
I'm stuck following googles source documents as what to do next. I have download the source code as described here and I have done this "git clone https://android.googlesource.com/kernel/msm.git". I see the ".git" file in the working directory but I'm confused as to what to do next. Where are the kernel files? I dont see the files that I see here: https://android.googlesource.com/kernel/msm.git/+/android-msm-marlin-3.18-nougat-mr1. Maybe I am confused but I'm just not sure what to do next. Any help or info will be appreciated.
Click to expand...
Click to collapse
Well, there are a buncha guides over here if you look in.
Ive found one for you - [Guide] build a kernel .

sachin n said:
Well, there are a buncha guides over here if you look in.
Ive found one for you - [Guide] build a kernel .
Click to expand...
Click to collapse
I've searched the forums and they are all out dated. The one you linked is from 2012. Google's documentation has changed and I can't find any extra info that is aligned with googles documentation.

Related

[GUIDE] Custom ROM development for the rest of us [In Progress]

*** THIS IS NOT JUST ANOTHER EFFORT TO CREATE YET ANOTHER CUSTOM ROM***
Though Android is opensource, a lot of things are unknown regarding ROM development/modification. There are many custom ROMs available for Galaxy 3 (and also other phones) and lot of people are flashing them and making their phone more responsive, productive and faster; but very few people actually knew how to go about developing the ROM.
What I intend here is to find out and document correct way to build ROM for our favorite Galaxy 3, which is very popular in India.
The goal will be to develop the ROM from Android source + Drivers from stock ROM while documenting the process so that large number of people can contribute to the development.
I will shortly update the posts with what I have done.
Reserved
Can anyone help me convert system.img and userdata.img file into files flash-able by ODIN?
Thanks
Third post
Reserved for future use
Fourth post
Fourth post.. reserved
Fifth post
Reserved 5th post goes here...
looking forward to what you come up with
Making one aint difficult keeping it bug free might get sometimes
Thanks rudolf895
I have experience in Android SDK and NDK development, but I am a noob when it comes to ROM development. Thats why this effort.
I have fetched android source using repo as well as I have also downloaded source for I5801 from Samsung open source website. After this I will look into extracting drivers from stock ROM and successfully compiling it for Galaxy 3.
rudolf895 said:
looking forward to what you come up with
Making one aint difficult keeping it bug free might get sometimes
Click to expand...
Click to collapse
abhijeet.pathak said:
thanks rudolf895
i have experience in android sdk and ndk development, but i am a noob when it comes to rom development. Thats why this effort.
I have fetched android source using repo as well as i have also downloaded source for i5801 from samsung open source website. After this i will look into extracting drivers from stock rom and successfully compiling it for galaxy 3.
Click to expand...
Click to collapse
best of luck
Looking forward to it!
abhijeet.pathak said:
Thanks rudolf895
I have experience in Android SDK and NDK development, but I am a noob when it comes to ROM development. Thats why this effort.
I have fetched android source using repo as well as I have also downloaded source for I5801 from Samsung open source website. After this I will look into extracting drivers from stock ROM and successfully compiling it for Galaxy 3.
Click to expand...
Click to collapse
Do not fell shy to ask for help u need. Together we can make it better. We are with you whenever u need us.
ARMVK Dev Team
Thanks!
Thanks a lot for your support guys..
arunmcops said:
Do not fell shy to ask for help u need. Together we can make it better. We are with you whenever u need us.
ARMVK Dev Team
Click to expand...
Click to collapse
hehe, cant wait to see what you come up with, sounds promissing btw... i am also willing to help whereever i can, whereas this wont be too much in this case i guess.
good luck and thanx...
TY ..!
Thanx alot
This would be really helpful to alot of members here
interesting ! waiting ....
I applaud your thread, I myself was thinking about such a concept.
I wanna help, but I cant do that much (basic knowledge of C and basic/little knowledge of linux and adb).
I think first there should be a list of basic stuff. Like compiling the sources, extracting factoryrfs and co from your phone etc... Sometimes if you wanna start doing something and you dont know the basics you get scared off because of their apparent tremendous lack of knowledge.
I'd probably start dabbling if somebody told me how to compile the sources.
can you also specify your work environment, toolchain and such stuff, so anyone can start from zero? there is a kernel building vm image with all tools by sztupy somewhere on the forum that is eventually of interest, and there is also an extended version containing eclipse and some more tools for full android development:
http://forum.xda-developers.com/showthread.php?t=882010
hope this helps somebody...
Did you try using it? I think the scripts are specific and cant be used by us (without altercation)
no, i have absolutely no idea of kernel compilation and all that advanced stuff, but i guess it can be adapted for our use
Yup...me too in waitin line...Now i can say i dint made a mistake by buying it...
Sent from my GT-I5801 using XDA App
abhijeet.pathak said:
Can anyone help me convert system.img and userdata.img file into files flash-able by ODIN?
Thanks
Click to expand...
Click to collapse
maybe you can create a ".tar" package including all those files.. .tar is flashable in odin..

[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

[Q] Building a UnORom on Gentoo

Hi there,
as I don't have permission to write on the Unofficial Rom Project Thread, I am asking here for a GUIDE to setup a jenkins server that automatically builds ROMs for my Sensation aka Pyramid.
Is anyone here who can help me to get into the build process for the first time on an continious integration server.
What did I already did?
I have set up Java 1.6 to build a Cyanogenmod 11 and I m not sure if it should be Java 7?
I downloaded the entire sources from github. I m sorry I m not allowed to post a link.
via
so I hope that isnt the wrong way as I am following multiple guides to accomplish my target.
So I wanted to set up it all for the first time to run a compilation without jenkins then I 'm stuck at the point where I integrate the UnORom files - I only could set up a
Code:
git clone https://github.com/UnORoms/android_device_htc_pyramid.git
and then i succesfully executed
Code:
./extract-files.sh
so it downloaded a couple of files from my phone.
But when I do a
Code:
lunch
there don't exists a cm_pyramid?
So I m stuck at this point and I m politely asking for help.(Maybe to accomplish my personal goal of using a continious integration server at least
Thanks in advance for your replys
Nobody knows how to build a android rom for a specific device?
In my case the HTC Sensation?
I would be glad if there where some tutorials of implementing the necessary files into my cm11-tree.
Could anyone please give it a try?
chiefdome said:
Nobody knows how to build a android rom for a specific device?
In my case the HTC Sensation?
I would be glad if there where some tutorials of implementing the necessary files into my cm11-tree.
Could anyone please give it a try?
Click to expand...
Click to collapse
I'm not 100% familiar with building roms, but I once compiled them completely from source for testing purposes.
Do you have device files and kernel in your local manifest to sync them from somewhere or did you take what you need from your phone? Not sure if it's required or not.
When I had everything ready I had to run
Code:
./device/htc/pyramid/repo-patcher.sh
then I could run
Code:
lunch cm_pyramid-userdebug
and it worked.
Not sure if it works same way here too, since I did that when I used Team-Sennyc2 device tree.

Lollipop Source - Official Nvidia Repository

The developer site is still listing KitKat as the newest build, so here are the links to the instructions to build Lollipop using the official source:
Lollipop 5.0: http://nv-tegra.nvidia.com/gitweb/?...a=blob_plain;f=README;hb=rel-st8-l-r1-partner
Lollipop 5.0.1: http://nv-tegra.nvidia.com/gitweb/?...a=blob_plain;f=README;hb=rel-st8-l-r2-partner
Cheers mate. It is still listing the 1.2.1 OTA as the latest but just by changing the branch url i was able to find the newest.
Lets hope for some more development on this device. I'm going to PM you soon - I will be building my own ROM and/or Kernel.
berryman13 said:
Cheers mate. It is still listing the 1.2.1 OTA as the latest but just by changing the branch url i was able to find the newest.
Lets hope for some more development on this device. I'm going to PM you soon - I will be building my own ROM and/or Kernel.
Click to expand...
Click to collapse
You do realize those are the links posted above. There is no need to switch branch names or search for the current files. Just click the one you want.
twistedumbrella said:
You do realize those are the links posted above. There is no need to switch branch names or search for the current files. Just click the one you want.
Click to expand...
Click to collapse
Of course, mate!
I was saying that I found the proper page by changing the URL to hb=rel-st8-l-r2-partner, before this thread was posted. So I appreciate you enlightening other folks about it!
berryman13 said:
Of course, mate!
I was saying that I found the proper page by changing the URL to hb=rel-st8-l-r2-partner, before this thread was posted. So I appreciate you enlightening other folks about it!
Click to expand...
Click to collapse
Even without already having the branch name, it's just a matter of going to http://nv-tegra.nvidia.com/gitweb/?p=manifest/android/binary.git;a=summary to find it
Hi, @twistedumbrella could you please spare a second to help (or point me in the right direction) I've successfully built Lollipop for my Oneplus One using Ubuntu, but when I try to set up first repo sync; well see below:
When I run: repo init -u git://nv-tegra.nvidia.com/manifest/android/binary.git -b rel-st8-l-r2-partner -m tlk/shieldtablet.xml
I get: fatal: manifest 'tlk/shieldtablet.xml' not available
fatal: remote github not defined in /home/diigimatrix/.repo/manifests/tlk/shieldtablet.xml
Please could you get me on my way. I love all your work and hope to gain further knowledge through your support.
Thanks in advance
Phil from Blackpool
diigibio said:
Hi, @twistedumbrella could you please spare a second to help (or point me in the right direction) I've successfully built Lollipop for my Oneplus One using Ubuntu, but when I try to set up first repo sync; well see below:
When I run: repo init -u git://nv-tegra.nvidia.com/manifest/android/binary.git -b rel-st8-l-r2-partner -m tlk/shieldtablet.xml
I get: fatal: manifest 'tlk/shieldtablet.xml' not available
fatal: remote github not defined in /home/diigimatrix/.repo/manifests/tlk/shieldtablet.xml
Please could you get me on my way. I love all your work and hope to gain further knowledge through your support.
Thanks in advance
Phil from Blackpool
Click to expand...
Click to collapse
I'm trying to figure out what's up with it now. I know when I synced it was r1, and tlk/shieldtablet.xml was valid.
Hopefully I can track down why it is coming back invalid in r2.
Thanks @twistedumbrella, glad in a way its not just me. Thought I was running the wrong command. . Happy New Year!
diigibio said:
Thanks @twistedumbrella, glad in a way its not just me. Thought I was running the wrong command. . Happy New Year!
Click to expand...
Click to collapse
Same to you. It updated ok but now I have to see if it'll re-init. It may be a delay on their end. The readme for the portable was up a week before the source.
Cool. I'll give it another try once I've finished work. Been a member for years and helped a lot in the old windows phone days. But thought enough of just relying on other people, time to start getting my hands dirty again. But new to building Android. Need to read up on manipulation of ROMs rather than just building a stock ROM. Any tips on tools to manipulate ROMs? Am i right by merging commits then build, then manipulate ROM? I will read up on it but just thought you might have some pointers. Thanks
diigibio said:
Cool. I'll give it another try once I've finished work. Been a member for years and helped a lot in the old windows phone days. But thought enough of just relying on other people, time to start getting my hands dirty again. But new to building Android. Need to read up on manipulation of ROMs rather than just building a stock ROM. Any tips on tools to manipulate ROMs? Am i right by merging commits then build, then manipulate ROM? I will read up on it but just thought you might have some pointers. Thanks
Click to expand...
Click to collapse
Best bet is to either find something you like and merge it or try to find something similar and recreate it to start. Once you get comfortable, then start coming up with your own.
Building from source is mostly Java for modifying with some C for drivers and such. Usually when you have a device configuration already set up, though, the C part is already done.
Just wanna say a big thanks to @twistedumbrella. I set up a new ubuntu build environment and I'm now compiling my first Android build for Nvidia Shield Tablet EU-LTE. No mods yet other than stock, but hopefully with time.
diigibio said:
Just wanna say a big thanks to @twistedumbrella. I set up a new ubuntu build environment and I'm now compiling my first Android build for Nvidia Shield Tablet EU-LTE. No mods yet other than stock, but hopefully with time.
Click to expand...
Click to collapse
Glad to hear it's all up and running. Best of luck!
twistedumbrella said:
Glad to hear it's all up and running. Best of luck!
Click to expand...
Click to collapse
Hi! I'm trying to compile but get error trying no find:
./packages/apps/UnifiedEmail/src
After repo sync, I don't have "src" directory for this package.
Thnx in advance.
entelekia said:
Hi! I'm trying to compile but get error trying no find:
./packages/apps/UnifiedEmail/src
After repo sync, I don't have "src" directory for this package.
Thnx in advance.
Click to expand...
Click to collapse
It looks like they are still working out a few issues with new updates. I don't maintain the source, so the only advice I can provide is to keep on eye on nvidia's gitweb for when they publish a solution (or occasionally sync and try over), or attempt to fix it yourself (which usually only works if there is an issue with the code, not code missing altogether).
Compiled! I have resynchronized all the project from scratch from git repository.
I'm going to test the compiled ROM in my tablet, but I suppose, I have to provide almost the essential pack of Google apps (basic providers and play services).
I think to flash *.img files, except recovery.img (I'm on TWRP), and then install from TWRP PA Gapps. Is this approach correct?
Thnx in advance and regards.
EDIT: No luck booting custom rom (TWRP nor stock recovery...)
Seem's like there's a new source three version out:
repo init -u git://nv-tegra.nvidia.com/manifest/android/binary.git -b rel-st8-l-r3-partner -m tlk/shieldtablet.xml
GethPrime said:
Seem's like there's a new source three version out:
repo init -u git://nv-tegra.nvidia.com/manifest/android/binary.git -b rel-st8-l-r3-partner -m tlk/shieldtablet.xml
Click to expand...
Click to collapse
Anyone managed to build this one yet? Its not working for me..

Need help for ROM building

Hi there,
I'm trying to make a lineageos ROM for our great Xperia XZ but I face some problems.
I done all the steps of the ultimate ROM making thread on XDA, and i can't see my XZ in the device list of the lunch command.
To be precise i see it as aosp_f8331 and not lineage_f8331 nor lineage_kagura.
I already tried to build aosp on XZ without any success.
Maybe someone can light my candle.
Thanks
fastbooking said:
Hi there,
I'm trying to make a lineageos ROM for our great Xperia XZ but I face some problems.
I done all the steps of the ultimate ROM making thread on XDA, and i can't see my XZ in the device list of the lunch command.
To be precise i see it as aosp_f8331 and not lineage_f8331 nor lineage_kagura.
I already tried to build aosp on XZ without any success.
Maybe someone can light my candle.
Thanks
Click to expand...
Click to collapse
Looks like you haven't changed the "vendorsetup.sh" file
Should look like THIS (But where carbon is, put lineage)
You can also use "lunch lineage_kagura-userdebug"
THANKS,
Maybe this will help me a lot !
I was looking all over internet to find an answer and you gave it.
nzzane said:
Looks like you haven't changed the "vendorsetup.sh" file
Should look like THIS (But where carbon is, put lineage)
You can also use "lunch lineage_kagura-userdebug"
Click to expand...
Click to collapse
hey, now i'm here.
Code:
build/core/product_config.mk:249: *** Can not locate config makefile for product "lineage_f8331". Arrêt.
Device f8331 not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS).
Repository for f8331 not found in the LineageOS Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml.
build/core/product_config.mk:249: *** Can not locate config makefile for product "lineage_f8331". Arrêt.
build/core/product_config.mk:249: *** Can not locate config makefile for product "lineage_f8331". Arrêt.
** Don't have a product spec for: 'lineage_f8331'
** Do you have the right repo manifest?
can you guide me or pm the steps.
I would like to write and post a detailed tutorial for building roms for our phone with all the links to the needed files etc.
Cheers
fastbooking said:
hey, now i'm here.
Code:
build/core/product_config.mk:249: *** Can not locate config makefile for product "lineage_f8331". Arrêt.
Device f8331 not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS).
Repository for f8331 not found in the LineageOS Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml.
build/core/product_config.mk:249: *** Can not locate config makefile for product "lineage_f8331". Arrêt.
build/core/product_config.mk:249: *** Can not locate config makefile for product "lineage_f8331". Arrêt.
** Don't have a product spec for: 'lineage_f8331'
** Do you have the right repo manifest?
can you guide me or pm the steps.
I would like to write and post a detailed tutorial for building roms for our phone with all the links to the needed files etc.
Cheers
Click to expand...
Click to collapse
https://github.com/nzzane/device-sony-kagura/blob/cm-14.1/vendorsetup.sh
Like that
Yeah I just understood that way and done that, the error is after the edit
fastbooking said:
Yeah I just understood that way and done that, the error is after the edit
Click to expand...
Click to collapse
@nzzane
fastbooking said:
@nzzane
Click to expand...
Click to collapse
Is your repo clones from the official device repo or made yourself?
nzzane said:
Is your repo clones from the official device repo or made yourself?
Click to expand...
Click to collapse
I cloned the lineageos repo and added Sony's device specific files after and edited local_manifest.xml
fastbooking said:
I cloned the lineageos repo and added Sony's device specific files after and edited local_manifest.xml
Click to expand...
Click to collapse
Can you link me to your repo?
I can have a look for you and see whats up
nzzane said:
Can you link me to your repo?
I can have a look for you and see whats up
Click to expand...
Click to collapse
Hum I'm a bit new, i need to fork everything i used ?
Or maybe i can upload my entire work file (i have fast internet 950mb/s Down and 250mb/s up)
fastbooking said:
Hum I'm a bit new, i need to fork everything i used ?
Or maybe i can upload my entire work file (i have fast internet 950mb/s Down and 250mb/s up)
Click to expand...
Click to collapse
Just upload your device folder: device/sony/kagura
and setup a new repo if you haven't already https://github.com/
and upload your Kagura folder's contents into the new repo
I see, I'll do it after school tomorrow (16 yo french boy), thanks for help tho
fastbooking said:
I see, I'll do it after school tomorrow (16 yo french boy), thanks for help tho
Click to expand...
Click to collapse
All good, XDA is a great place to learn, as long as the devs are friendly ?
If you need help, you can reach out to me
I figured out for the build issue,( thanks to @nzzane)
Now the kernel issue some files are missing so if anyone can help me,
I'll post a full tutorial from scratch and give ALL the needed files for building
?

Categories

Resources