[Q] Building ROM - Sony Xperia M2

I would like to start with building my ROM from scratch. I have read a lot of tutorials and they're all the same: sync everything and then make otapackage or etc. The problem is: it is everything already preconfigured, you have just to build.
So my question is: can I use latest Sony kernel sources or M2Dev KitKat sources to build CM12 or AOSP Lollipop (generally to build higher version of Android)? Or maybe I would have to write it from scratch? I expect to get at least bootable ROM.
I can't tell that I'm going to start a real development, I just want to learn how stuff works.

ReznorNInchNails said:
I would like to start with building my ROM from scratch. I have read a lot of tutorials and they're all the same: sync everything and then make otapackage or etc. The problem is: it is everything already preconfigured, you have just to build.
So my question is: can I use latest Sony kernel sources or M2Dev KitKat sources to build CM12 or AOSP Lollipop (generally to build higher version of Android)? Or maybe I would have to write it from scratch? I expect to get at least bootable ROM.
I can't tell that I'm going to start a real development, I just want to learn how stuff works.
Click to expand...
Click to collapse
Send me the tutorial link of you....i'll be try

ReznorNInchNails said:
I would like to start with building my ROM from scratch. I have read a lot of tutorials and they're all the same: sync everything and then make otapackage or etc. The problem is: it is everything already preconfigured, you have just to build.
So my question is: can I use latest Sony kernel sources or M2Dev KitKat sources to build CM12 or AOSP Lollipop (generally to build higher version of Android)? Or maybe I would have to write it from scratch? I expect to get at least bootable ROM.
I can't tell that I'm going to start a real development, I just want to learn how stuff works.
Click to expand...
Click to collapse
Yeah you can use kitkat kernel sources to build lollipop with some changes here and their!!

RootLord said:
Yeah you can use kitkat kernel sources to build lollipop with some changes here and their!!
Click to expand...
Click to collapse
Thanks

Related

building kernel from aosp source

im trying to build the kernel from androids googlesource website, and want to know which defconfig i need to use to start the build
tegra3_android_defconfig
tegra_android_defconfig
tegra3_defconfig
tegra_defconfig
i couldnt find a grouper specific one
azoller1 said:
im trying to build the kernel from androids googlesource website, and want to know which defconfig i need to use to start the build
tegra3_android_defconfig
tegra_android_defconfig
tegra3_defconfig
tegra_defconfig
i couldnt find a grouper specific one
Click to expand...
Click to collapse
tegra3_android_defconfig seems to be the one.
Yes, I am trying to rebuild their from source. But, when I have testing on running. There are found red splash when I click them on screen. May I know what the caused of this ?
Thanks.
Ok, The problem has resolved now .
AOSP's guide to building kernels is quite useful. I actually used it earlier today.
http://source.android.com/source/building-kernels.html
It contains building instructions (obviously) as well as the proper defconfig for all AOSP devices.

[DEV] Porting kernel 3.10.x to d2 for Lollipop

As we know, Android Lollipop is being released soon, and it requires a kernel that is 3.10.y, which is not available for our device. I'm not great with kernels and would in no way consider myself a kernel developer, but I have applied the neccessary patches to get the kernel version up to 3.10.0, which can be found here https://github.com/frap129/android_kernel_samsung_d2. Because I'm not a kernel developer, I am looking for some help in at least getting this kernel somewhat ready before the release of 5.0, so we can all get the latest update ASAP. Any and all help is apreciated!
Does your kernel compile and boot on cm11? If it does, there shouldn't be much problems in getting it working on L.
Any news? Does it compile?
frap129 said:
As we know, Android Lollipop is being released soon, and it requires a kernel that is 3.10.y, which is not available for our device. I'm not great with kernels and would in no way consider myself a kernel developer, but I have applied the neccessary patches to get the kernel version up to 3.10.0, which can be found here https://github.com/frap129/android_kernel_samsung_d2. Because I'm not a kernel developer, I am looking for some help in at least getting this kernel somewhat ready before the release of 5.0, so we can all get the latest update ASAP. Any and all help is apreciated!
Click to expand...
Click to collapse
nope android 5.0 doesnt require new kernel, you could build it on 3.0.y like i am doing on my Note 2 oh and as far as i know new nexus devices are still on 3.4.y
Ivan_Meler said:
nope android 5.0 doesnt require new kernel, you could build it on 3.0.y like i am doing on my Note 2 oh and as far as i know new nexus devices are still on 3.4.y
Click to expand...
Click to collapse
yes, but the new Samsung tablets (at least) are being shipped with the 3.10.x kernels.. 'course they're still running kitkat at the moment, but definitely cannot wait to see if/when they get kit kat.
I'll have to report back later after I take pictures of the 'about phone' page lol [if you want proof anyway]
frap129 said:
As we know, Android Lollipop is being released soon, and it requires a kernel that is 3.10.y, which is not available for our device. I'm not great with kernels and would in no way consider myself a kernel developer, but I have applied the neccessary patches to get the kernel version up to 3.10.0, which can be found here https://github.com/frap129/android_kernel_samsung_d2. Because I'm not a kernel developer, I am looking for some help in at least getting this kernel somewhat ready before the release of 5.0, so we can all get the latest update ASAP. Any and all help is apreciated!
Click to expand...
Click to collapse
ztotherad said:
yes, but the new Samsung tablets (at least) are being shipped with the 3.10.x kernels.. 'course they're still running kitkat at the moment, but definitely cannot wait to see if/when they get kit kat.
I'll have to report back later after I take pictures of the 'about phone' page lol [if you want proof anyway]
Click to expand...
Click to collapse
I know samsung does things like that (i have few other devices from them) but hey thats samsung and they are lazy so they dont want to update kernel version after device is relesed so they do this not to feel outdated on softwere side
Whoops! I read somewhere that the newly expanded SELinux permissions had some dependency on the 3.10.y kernel. Oh well, I guess Ill just test it anyways so I can brag that I have a newer kernel than anyone else if it works
frap129 said:
Whoops! I read somewhere that the newly expanded SELinux permissions had some dependency on the 3.10.y kernel. Oh well, I guess Ill just test it anyways so I can brag that I have a newer kernel than anyone else if it works
Click to expand...
Click to collapse
That would definitely be awesome! Be sure to report back your results. I'm not an experienced ROM or kernel developer, but I'll be attempting on bringing a pure AOSP 5.0.0_r2 to my GS3. I'm not sure how successful I'll be, but my first step involved me planning on copying over our vendor repo from CM's M11 or M12 release (whenever that gets out) and trying to build Lollipop against it.
polarEskimo said:
That would definitely be awesome! Be sure to report back your results. I'm not an experienced ROM or kernel developer, but I'll be attempting on bringing a pure AOSP 5.0.0_r2 to my GS3. I'm not sure how successful I'll be, but my first step involved me planning on copying over our vendor repo from CM's M11 or M12 release (whenever that gets out) and trying to build Lollipop against it.
Click to expand...
Click to collapse
I was planning on working on that as well over the weekend.
polarEskimo said:
That would definitely be awesome! Be sure to report back your results. I'm not an experienced ROM or kernel developer, but I'll be attempting on bringing a pure AOSP 5.0.0_r2 to my GS3. I'm not sure how successful I'll be, but my first step involved me planning on copying over our vendor repo from CM's M11 or M12 release (whenever that gets out) and trying to build Lollipop against it.
Click to expand...
Click to collapse
You will need to change many things in device tree to get it compile oh and dont forget to disable cm overlays
Ivan_Meler said:
You will need to change many things in device tree to get it compile oh and dont forget to disable cm overlays
Click to expand...
Click to collapse
I'm very new to the AOSP build process and didn't have much luck last night getting the CM device sources to play nicely with AOSP. I'm finding it difficult to find any relevant guides on porting over the CM device trees to pure AOSP. If you or anyone else can help by explaining the process or pointing to a guide that I may have missed, I'd be grateful. Plus the more people we have collaborating on his, the better our chances of getting Lollipop on our devices.
I'm working on porting 5.0 to our phone, tweaked the device tree and got the build running but (as expected) i'm running into SEpolicy hell. The new selinux implementation in lollipop is proving to be trouble. I've just made a few more edits and the build is moving along, I'll post results shortly.
If anyone cares to help I'll walk you through what I've done so far. One thing to note is you need to adjust vendorsetup.sh to say full_d2lte-eng instead of cm_d2lte-eng and create AndroidProducts.mk that points at full_d2lte.mk (you can use the hammerhead device tree as a reference to do this)
That will get your device tree to regester properly. If you don't do the above you'll get a "no config makefile found" error when you try to select d2lte with lunch.
As far as the actual tree, you're gonna wanna grab device/samsung/d2lte, device/samsung/msm8960-common, vendor/samsung/d2lte, vendor/samsung/msm8960-common, vendor/cm, vendor/cyngn, and kernel/d2.
You'll also need a couple things from /hardware, namely hardware/samsung. There's a couple things you'll need to remove from msm8960-common in /device, I can't remember the specific file name but the error message will tell you.
Follow those instructions and you'll get where I'm at, with the build crapping out on SEpolicy
Restl3ss said:
I'm working on porting 5.0 to our phone, tweaked the device tree and got the build running but (as expected) i'm running into SEpolicy hell. The new selinux implementation in lollipop is proving to be trouble. I've just made a few more edits and the build is moving along, I'll post results shortly.
If anyone cares to help I'll walk you through what I've done so far. One thing to note is you need to adjust vendorsetup.sh to say full_d2lte-eng instead of cm_d2lte-eng and create AndroidProducts.mk that points at full_d2lte.mk (you can use the hammerhead device tree as a reference to do this)
That will get your device tree to regester properly. If you don't do the above you'll get a "no config makefile found" error when you try to select d2lte with lunch.
As far as the actual tree, you're gonna wanna grab device/samsung/d2lte, device/samsung/msm8960-common, vendor/samsung/d2lte, vendor/samsung/msm8960-common, vendor/cm, vendor/cyngn, and kernel/d2.
You'll also need a couple things from /hardware, namely hardware/samsung. There's a couple things you'll need to remove from msm8960-common in /device, I can't remember the specific file name but the error message will tell you.
Follow those instructions and you'll get where I'm at, with the build crapping out on SEpolicy
Click to expand...
Click to collapse
Wow, this is awesome. It sounds like you've gotten the furthest than any of us. I appreciate the instructions, but is there any chance you could push your repos to GitHub? And do you think the SELinux stuff you're running into has anything to do with our device being on the 3.4 kernel instead of 3.10?
polarEskimo said:
Wow, this is awesome. It sounds like you've gotten the furthest than any of us. I appreciate the instructions, but is there any chance you could push your repos to GitHub? And do you think the SELinux stuff you're running into has anything to do with our device being on the 3.4 kernel instead of 3.10?
Click to expand...
Click to collapse
It's not a kernel thing so much as a device tree thing. (Kitkat vs lollipop) the policy.conf (along with a few other things) in the device tree is designed for kitkat and isn't playing very nice with the 5.0 source. I'm trying to bang it out a bit by swapping a few C and header files in the build core.
As for my last build, my tweaks got me past where I was but now I'm hanging on a new set of SElinux errors.
I've been at this for less than 12 hours so given that timeframe this looks promising.
I'm trying to think of what the best way to go about this is. I could either try to adapt the tree for the new source or I could try to adapt the source for the old tree (use KitKat SElinux implementation on lollipop). The latter would have more success with root but the former is the correct way to do it (and would get us cyanogenmod 12 faster once they start nightlies, as I can push the changes to gerrit)
Restl3ss said:
It's not a kernel thing so much as a device tree thing. (Kitkat vs lollipop) the policy.conf (along with a few other things) in the device tree is designed for kitkat and isn't playing very nice with the 5.0 source. I'm trying to bang it out a bit by swapping a few C and header files in the build core.
As for my last build, my tweaks got me past where I was but now I'm hanging on a new set of SElinux errors.
I've been at this for less than 12 hours so given that timeframe this looks promising.
I'm trying to think of what the best way to go about this is. I could either try to adapt the tree for the new source or I could try to adapt the source for the old tree (use KitKat SElinux implementation on lollipop). The latter would have more success with root but the former is the correct way to do it (and would get us cyanogenmod 12 faster once they start nightlies, as I can push the changes to gerrit)
Click to expand...
Click to collapse
Again, any chance you can post your source? You don't have to try and work on it on your own. The more people that look at the progressions you made, the better our chances are at success.
polarEskimo said:
Again, any chance you can post your source? You don't have to try and work on it on your own. The more people that look at the progressions you made, the better our chances are at success.
Click to expand...
Click to collapse
I'll push what I've got to github after this experiment
Cyanogen is updating sources to lolipop right now and omni has semi working source so it will be easier to port 5.0 since we wont need to edit device tree that much
Ivan_Meler said:
Cyanogen is updating sources to lolipop right now and omni has semi working source so it will be easier to port 5.0 since we wont need to edit device tree that much
Click to expand...
Click to collapse
Yes but, they have a tentative deadline of dec. 1st to start pushing out the first nightlies. We likely won't be in the first wave either, since d2 is now 3 generations out of date.
I'd much rather just port aosp and have it in 2 weeks rather than wait 3 weeks to even begin work.
Side note. If/when I get this working I'm calling it PotatOS
Managed to work past my problem with SElinux for now, the build has now moved on to... another set of errors!
Build currently hangs at this:
Code:
host C++: libutils_32 <= system/core/libutils/StopWatch.cpp
host C++: libutils_32 <= system/core/libutils/String8.cpp
host C++: libutils_32 <= system/core/libutils/String16.cpp
host C++: libutils_32 <= system/core/libutils/SystemClock.cpp
host C++: libutils_32 <= system/core/libutils/Threads.cpp
host C++: libutils_32 <= system/core/libutils/Timers.cpp
system/core/libutils/Timers.cpp: In function 'nsecs_t systemTime(int)':
system/core/libutils/Timers.cpp:43:13: error: 'CLOCK_BOOTTIME' was not declared in this scope
build/core/binary.mk:618: recipe for target 'out/host/linux-x86/obj32/STATIC_LIBRARIES/libutils_intermediates/Timers.o' failed
make: *** [out/host/linux-x86/obj32/STATIC_LIBRARIES/libutils_intermediates/Timers.o] Error 1
#### make failed to build some targets (01:19 (mm:ss)) ####
Going to bed, will get back at it in the morning. Source should be up on github by tomorrow night
Restl3ss said:
Yes but, they have a tentative deadline of dec. 1st to start pushing out the first nightlies. We likely won't be in the first wave either, since d2 is now 3 generations out of date.
I'd much rather just port aosp and have it in 2 weeks rather than wait 3 weeks to even begin work.
Side note. If/when I get this working I'm calling it PotatOS
Click to expand...
Click to collapse
I'm with you on that, I'd rather have pure AOSP than buggy CM nightlies. Also interesting choice of ROM name lol. Thanks for your hard work and I'm looking forward to pulling down your repos so I can take a stab at these compile-time issues.

[Q] Building AOSP (not CM) for the OPO, is it possible?

Hi, I've just received my OPO on the 27th. I was really interested in Android development when I had my Nexus 5 and started building my own AOSP ROM, I've been looking into doing the same for the OPO but am unable to find an actual way of building AOSP with Google's code. I know OPO released their AOSP kernel source here: https://github.com/OnePlusTech/android_kernel_oneplus_one and CyanogenMod has thiers here: https://github.com/CyanogenMod/android_kernel_oneplus_msm8974 but I'm unable to work out a way of including these into my AOSP build and I would prefer to not build CM.
Note: I'd like to build AOSP myself, I'm fully aware that there is a current official OPO build available.
Thanks in advance,
Lewis
LewisD94 said:
Hi, I've just received my OPO on the 27th. I was really interested in Android development when I had my Nexus 5 and started building my own AOSP ROM, I've been looking into doing the same for the OPO but am unable to find an actual way of building AOSP with Google's code. I know OPO released their AOSP kernel source here: https://github.com/OnePlusTech/android_kernel_oneplus_one and CyanogenMod has thiers here: https://github.com/CyanogenMod/android_kernel_oneplus_msm8974 but I'm unable to work out a way of including these into my AOSP build and I would prefer to not build CM.
Note: I'd like to build AOSP myself, I'm fully aware that there is a current official OPO build available.
Thanks in advance,
Lewis
Click to expand...
Click to collapse
It's advisable that you create your own tree from the CAF MSM8974 using CM GPS and other drivers and build CAF AOSP. Otherwise, it's close to impossible/very difficult. Pure AOSP is again near impossible/very difficult for non nexus devices.
Thank you very much for the reply, so building AOSP is pretty much impossible then?
I was having a look around on the internet last night and came across this: http://developer.sonymobile.com/kno...uild-aosp-kitkat-for-unlocked-xperia-devices/
Would there be a way of adapting this guide to allow for an easier build process of AOSP for our device? The other confusion that I face is if it's impossible to build AOSP for the OPO then how are ROMs such as this available?
LewisD94 said:
Thank you very much for the reply, so building AOSP is pretty much impossible then?
I was having a look around on the internet last night and came across this: http://developer.sonymobile.com/kno...uild-aosp-kitkat-for-unlocked-xperia-devices/
Would there be a way of adapting this guide to allow for an easier build process of AOSP for our device? The other confusion that I face is if it's impossible to build AOSP for the OPO then how are ROMs such as this available?
Click to expand...
Click to collapse
VanirAOSP uses CM trees as of now. Again, CAF AOSP is basically AOSP for non nexus Qualcomm devices., and any experienced dev can whip up a tree and get it working. Also, reaally good devs can/may be able to port AOSP if they wanted. It's a matter of whether they want to do it or not.
That link is for Sony devices only because Sony already provides CAF trees as an OEM so devs can build.
rudi_j7 said:
VanirAOSP uses CM trees as of now. Again, CAF AOSP is basically AOSP for non nexus Qualcomm devices., and any experienced dev can whip up a tree and get it working. Also, reaally good devs can/may be able to port AOSP if they wanted. It's a matter of whether they want to do it or not.
That link is for Sony devices only because Sony already provides CAF trees as an OEM so devs can build.
Click to expand...
Click to collapse
Ah yes, I see what you're saying now. Thanks for clearing this up for me! I just noticed when I looked at the VanirAOSP ROM thread that it states CM for it's credits, haha. I apologize for my ignorance.
Hello
I would like to create my first rom for oneplus one but without modification from OMNI or CM, basically vanilla rom. but I have some doubts.
Can I create a rom based on AOSP with device tree from OMNI/CM right?
Thanks!

[Completed] How to get proprietary blobs!!

how to build a cyanogenmod from source for unsupported devices.All the custom rom's building instruction say that "Your device should already be running the branch of CyanogenMod you wish to build your own version of for the extract-files.sh script to function properly. If you are savvy enough to pull the files yourself off the device by examining the script, you may do that as well without flashing CyanogenMod first."
But where is the first proprietary blobs came from??
How can we get the proprietary blobs for other devices for the first time build?
I dnt understand anything...I'm trying to build a fresh cm12.1 rom for my device galaxy j5..plz guide me in ryt way if am wrong
ganesh varma said:
how to build a cyanogenmod from source for unsupported devices.All the custom rom's building instruction say that "Your device should already be running the branch of CyanogenMod you wish to build your own version of for the extract-files.sh script to function properly. If you are savvy enough to pull the files yourself off the device by examining the script, you may do that as well without flashing CyanogenMod first."
But where is the first proprietary blobs came from??
How can we get the proprietary blobs for other devices for the first time build?
I dnt understand anything...I'm trying to build a fresh cm12.1 rom for my device galaxy j5..plz guide me in ryt way if am wrong
Click to expand...
Click to collapse
Hello,
Thanks for using XDA Assist.
You can take a look at [GUIDE][COMPLETE] Android ROM Development From Source To End
Also read http://www.netmite.com/android/mydroid/development/pdk/docs/
___
v7
XDA Assist

[Completed] Nexus5X - Create A Custom ROM

Hi! I own the Nexus5X and I am interesting in creating a custom ROM for the device. I have synced the AOSP source tree, gotten everything set up and flashed a build on to my device.
How can I start creating a ROM for the device? What are some general guidelines? How do I start tweaking apps, adding features, etc.
Also, if someone could take a look at these errors I am getting with my AOSP build that would be awesome: https://forum.xda-developers.com/nexus-5x/help/issues-aosp-built-source-bullhead-t3555439
Thanks
NateDev said:
Hi! I own the Nexus5X and I am interesting in creating a custom ROM for the device. I have synced the AOSP source tree, gotten everything set up and flashed a build on to my device.
How can I start creating a ROM for the device? What are some general guidelines? How do I start tweaking apps, adding features, etc.
Also, if someone could take a look at these errors I am getting with my AOSP build that would be awesome: https://forum.xda-developers.com/nexus-5x/help/issues-aosp-built-source-bullhead-t3555439
Thanks
Click to expand...
Click to collapse
Hello,
If you have interest in develop a custom rom, i suggest you start at XDA University to learn a bit of everything about Android.
You have some great guides on Android Software Development (look at stick posts)
I have my own guide which is not finished but I will teach everything you need to know about build a custom ROM from source, how to use github, git, mergetool etc... You can follow my progress HERE
FSadino said:
Hello,
If you have interest in develop a custom rom, i suggest you start at XDA University to learn a bit of everything about Android.
You have some great guides on Android Software Development (look at stick posts)
I have my own guide which is not finished but I will teach everything you need to know about build a custom ROM from source, how to use github, git, mergetool etc... You can follow my progress HERE
Click to expand...
Click to collapse
OK thanks, I will take a look at that. If possible, could you take a look at the errors I am getting with my AOSP build? I posed the link in the original post. Also, do you have to run extract-files.sh or can you simply download the vendor binaries from Google and run the extracting script? (AOSP)
NateDev said:
Also, do you have to run extract-files.sh or can you simply download the vendor binaries from Google and run the extracting script? (AOSP)
Click to expand...
Click to collapse
If you fork/download vendor binaries you don't need to run extracting script

Categories

Resources