making unofficial builds of ROMs for our device - OnePlus 3 Questions & Answers

hello,
I've noticed that there is a guide for building CM14 for the oneplus 3. Myself and others have been able to use it to make personal builds and to learn some things along the way.
I would imagine that the next step to progress to would be to make builds of ROMs that don't have a nougat/CM14 branch in their repo for our device. Its pretty easy to brunch, select your device, and wait for the build to finish. But I am very interested in learning how to build a ROM using a device tree from another repo.
I've noticed that @Eliminater seems to be very proficient at this, as he has built and posted unofficials of various ROMs.
I've been trying to teach/learn this myself through searching for guides, but havent been able to find anything that helps me get there 100% of the way.
I've been able to get as far as forking the device tree, editing the .mk and .dependencies files to match the format needed for the ROM I'm trying to build. I've also added the forked device tree and additional repos to the local_manifest. This has gotten me far enough that I have been able to do a successful "lunch", but I haven't gotten a build to finish. In fact, they fail pretty early on.
Is anyone able and willing to explain the process further?
Are there additional steps that I'm missing?
Or do you just need to be proficient enough to troubleshoot error after error when building?
Thanks in advance

Related

Building Latest AOSP

Okay so with the help of a lot of people and hours of work I have successfully built a kernel for the sg3. I want to take the next step to roms however (I know, big step).
Using the xda-university thread I have setup a repo and am currently pulling the latest 4.3 AOSP source (will let it sit overnight, my internet isn't too amazing and I have HDD not SSD *sadface*)
As far as I understand it so far, I need to find suitable device tree sources to get AOSP sources working on the sg3 (at&t for now). I have been doing a lot of searching and reading, but as usual when you get started, its like a sea of information. If anybody could give me some reading material or direction on taking on this venture, it would be much appreciated. Feel free to be as technical or nontechnical, I will read til I get what you mean.
Thanks
EDIT: so I did some reading and decided to go with cm's d2 device tree and see if it works. I created a new directory in /root/devices/samsung called android_device_samsung_d2-common
Unfortunately when I use the lunch command, it is not one of the selectable options. I read that I need to edit my .repo/manifest.xml to include it but upon examination I tried adding the following line but it didn't help
Code:
<project path="device/samsung/android_device_samsung_d2-common" name="device/samsung/android_device_samsung_d2-common" groups="device,d2" />
any ideas?
Anyone?
If you want to build cm, look here
http://wiki.cyanogenmod.org/w/D2att_Info
It has a very good tutorial on how to build cm
mrhaley30705 said:
If you want to build cm, look here
http://wiki.cyanogenmod.org/w/D2att_Info
It has a very good tutorial on how to build cm
Click to expand...
Click to collapse
Thanks, wanted to build from source directly and just use cm device trees but I guess I should make smaller steps and try basing off of cm first. Thanks for the link, will try
It's also a good way to test your build environment. If you can build cm straight up, then you'll know if something you did broke it. And believe me, trying to chase down build errors is a pita.

[Q] Building unofficial AOSPA ROM - Need Help

Good morning,
as per thread title I'm trying to build my first custom ROM.
As it is my first time ever trying this, instead of starting from scratch I decided to port an existing ROM to our device.
I decided to go for Paranoid Android (AOSPA) ROM, for two reasons: I previously used and liked very much the KitKat version, and there is currently no port of this ROM.
I read a lot of guides on how to do this, and while I learnt a lot, I'm still not quite sure on how to properly do this. So I thought I might ask for some help.
What I learnt so far is this:
1) Fork Paranoid Android's manifest and add compatible device and kernel repositories (I chose @MWisBest's device repo)
2) Fork Paranoid Android's vendor_pa project and add device support
3) Fork device tree and adapt some makefiles
What I still don't quite get is:
1) Apart for device-specific fixes, is this enough to TRY a build?
2) Regarding device, are there some specific fixes to make a working ROM? (e.g. I knew something about block-based OTAs so I disabled them following ParanoidAndroid's change #68 on Gerrit)
You can see my work on GitHub, search for my username Bruno3589 (I'm not allowed to insert URLs right now, I need to make >10 posts).
I'll try a build ASAP, but it might take a while since I'm limited in terms of internet connection and time.
Any help or suggestion is really appreciated!
Thanks in advance and have a good day
P.S. I know MWisBest's device unifies all variants (tuna) instead of making separate ones (maguro,toro,toroplus), I thought it would be useful to have a single build.

DEV HELP !!!

I have reached out to several DEV's asking for assistance in building my own LineageOS. I have a Verizon Note 4 (N910V) and I am looking for a serviceroom.xml for the next step of the build. Can anyone help me in making one, sharing theirs?
Neuken69 said:
I have reached out to several DEV's asking for assistance in building my own LineageOS. I have a Verizon Note 4 (N910V) and I am looking for a serviceroom.xml for the next step of the build. Can anyone help me in making one, sharing theirs?
Click to expand...
Click to collapse
I am no dev, but there are working room service at this thread. Just replace with Verizon device tree.
Like I said, I'm no dev but this should get you started.
I wish it were as easy as replacing the device tree I've been on the hunt for a trltevzw tree to complete the collection of trlte builds I'm compiling. The best one I found was from Zecozhang, but his errors out during building due to a problem with the TrlteRIL.java file. Perhaps the China Telecom-specific parameters in his tree are too different from Verizon's to work.
As for the vendor blobs, weard1212 has a repo, as well as his own device tree. However, putting together a roomservice.xml with weard1212's device tree and blobs, along with EmotionOS's other repos, errors out before compiling even begins.

Making a CAF based rom.

Alright so I've built and modified both LOS and RR a bit and it went pretty well. Tutorials o'plenty when it comes to building those roms.
However I now want to try and build a rom from scratch and I'd like to base it on CAF.
I've *I think* correctly synced up with the latest msm8996 tag, but I may have ****ed that up as well.
My problem is is that I literally can not find any resource for building with CAF sources, and I can't even find my local_manifests/roomservice, so I have no idea where to start.
If any of you have any resources or want to share a bit of your knowledge it would be greatly appreciated.
Thanks.
Anyone?
Hey, check out AOSP-CAF(https://github.com/AOSP-CAF). This is all you'll ever need and it's updated regularly. The dev has already added all the necessary stuff(HALS) and also has CM's build system so all you need to do is fork some device tree , sync it's dependencies and you should be good to go.
INT3NSE07 said:
Hey, check out AOSP-CAF(https://github.com/AOSP-CAF). This is all you'll ever need and it's updated regularly. The dev has already added all the necessary stuff(HALS) and also has CM's build system so all you need to do is fork some device tree , sync it's dependencies and you should be good to go.
Click to expand...
Click to collapse
Thanks! I've synced up with it and also synced with the OnePlusOSS device tree. The builds are failing however because the pull_library.sh script they give doesn't work anymore. Is there another device tree you would recommend? And how could I go about finding the dependencies?
Thanks for your help

Unofficial build help?

I'm trying to build for a device that has no known Android 10 device trees that I can find. I think I fleshed out the trees pretty well by following some sister/cousin devices and extracting a lot of stuff from the rooted phone itself, but my build fails at 2% due to a missing output file. The missing libdss.so file should be built as part of the kernel (whose source I have), but the build clearly isn't happening (or isn't happening in time to be recognized by the build system.)
I tried to build the kernel as a standalone module to see what might be wrong, and in trying to do that I can't seem to resolve all the issues with dependencies for cross-compilation to arm64. I've built for devices with existing trees by cherry-picking what I needed, but I've never built for something from the ground-up like this. I don't want to make the ROM with a pre-built kernel as the end-goal would be to become official. The attached image is the exact error I'm receiving, and the following links are to all of my source repositories that I'm using in addition to the Lineage17.1 base. Any help would be appreciated. I work as a full-time dev by day, I don't mind slogging around in some code if that's what I takes, I've just reached the end of my troubleshooting knowledge here and am not sure what the next step might be.
https://github.com/polaarbear/android_device_motorola_troika_sprout
https://github.com/polaarbear/android_device_motorola_universal9610-common
https://github.com/polaarbear/android_vendor_motorola_universal9610-common
https://github.com/polaarbear/android_kernel_motorola_universal9610

Categories

Resources