Related
I want to try and compile the oficial gb sources, mainly out of curiosity, but I would love having some clues on how to achieve it.
I'm a coder myself, but I don't know **** about android development. I guess I have to start by installing android sdk but then what? Any hints? A link to a begginer's guide or something would be great.
Sure I can find this info on google (starting the research right now) but maybe you guys can point me into the right direction.
Edit: I've found basic build instructions right inside the ZIP file containing the sources:
Code:
1. Android buid
- Download original android source code (gingerbread) from http://source.android.com
- Untar opensource packages of p500_gb_open_source.tar.gz into downloaded android source directory
- And, merge the source into the android source code(gingerbread)
- Run following scripts to build android
a) . build/envsetup.sh
b) make -j4
- When you compile the android source code, you have to add google original prebuilt source(toolchain)
into the android folder
( add prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin to PATH )
- After build, you can find output at out/target/product/generic
2. Kernel Build
- When you compile the kernel source code, you have to add google original prebuilt source(toolchain)
into the android folder.
( Add prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin to PATH
ex) export PATH=$PATH:$HOME/gb_original/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin )
- Untar using following command at the android folder
tar zxvf kernel.tar.gz
- cd Kernel
- make thunderg-perf_defconfig
- make zImage -j4
3. After Build, You Can find the build image at arch/arm/boot
4. Compile environment
- gcc 4.4.1
- Ubuntu 10.10
- Java 1.6.0_22
I'll continue researching and will post any finds and my progress here if there's anyone interested. Meanwhile you can contribute with anything you can and by the end we may have a good tutorial out of it.
Look at first post from Andy's Gingerbread, he describes what you need.
No need to install Android SDK.
I take sources from codeaurora, merge with LG-source.
drakull said:
I want to try and compile the oficial gb sources, mainly out of curiosity, but I would love having some clues on how to achieve it.
I'm a coder myself, but I don't know **** about android development. I guess I have to start by installing android sdk but then what? Any hints? A link to a begginer's guide or something would be great.
Sure I can find this info on google (starting the research right now) but maybe you guys can point me into the right direction.
Edit: I've found basic build instructions right inside the ZIP file containing the sources:
Code:
1. Android buid
- Download original android source code (gingerbread) from http://source.android.com
- Untar opensource packages of p500_gb_open_source.tar.gz into downloaded android source directory
- And, merge the source into the android source code(gingerbread)
- Run following scripts to build android
a) . build/envsetup.sh
b) make -j4
- When you compile the android source code, you have to add google original prebuilt source(toolchain)
into the android folder
( add prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin to PATH )
- After build, you can find output at out/target/product/generic
2. Kernel Build
- When you compile the kernel source code, you have to add google original prebuilt source(toolchain)
into the android folder.
( Add prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin to PATH
ex) export PATH=$PATH:$HOME/gb_original/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin )
- Untar using following command at the android folder
tar zxvf kernel.tar.gz
- cd Kernel
- make thunderg-perf_defconfig
- make zImage -j4
3. After Build, You Can find the build image at arch/arm/boot
4. Compile environment
- gcc 4.4.1
- Ubuntu 10.10
- Java 1.6.0_22
I'll continue researching and will post any finds and my progress here if there's anyone interested. Meanwhile you can contribute with anything you can and by the end we may have a good tutorial out of it.
Click to expand...
Click to collapse
Forget about this. LG did not released Android soures. There are kernel only.
Damn... are you sure, Mik?
Have you looked inside the zip? There's 2 tarballs, one for the Kernel and other reading 'p500_gb_open_source.tar.gz'. I tought it was the p500 gb android source files that needs to be merged with the main source code.
Well... that's a real shame.
drakull said:
Damn... are you sure, Mik?
Have you looked inside the zip? There's 2 tarballs, one for the Kernel and other reading 'p500_gb_open_source.tar.gz'. I tought it was the p500 gb android source files that needs to be merged with the main source code.
Well... that's a real shame.
Click to expand...
Click to collapse
it is on GB, and it was on FROYO - LG didnt release the complete source code,
only some modifications to the android sources - because not all parts of android
are GPLv1, they doesnt MUST release sources for this parts these arent of GPLv2 or GPLv3 in some cases ...
andy572 said:
it is on GB, and it was on FROYO - LG didnt release the complete source code,
only some modifications to the android sources - because not all parts of android
are GPLv1, they doesnt MUST release sources for this parts these arent of GPLv2 or GPLv3 in some cases ...
Click to expand...
Click to collapse
AFAIK Even with froyo LG didn't publish the WHOLE source,only pieces of it (AFAIK).
I'm still downloading sources from codeaurora, as soon as it's finished I'll merge the changes and we'll see what happens
_Arjen_ said:
I'm still downloading sources from codeaurora, as soon as it's finished I'll merge the changes and we'll see what happens
Click to expand...
Click to collapse
I can't even download sources,my internet connection freezes everytime I download something (only if speed goes above 350KB/s),so no Eclair build for meh . Gonna kill Telecom Italia soon
Viva l'Italia
_Arjen_ said:
Viva l'Italia
Click to expand...
Click to collapse
Ahaha lol I do love my country but internet services suck
_Arjen_ said:
I'm still downloading sources from codeaurora, as soon as it's finished I'll merge the changes and we'll see what happens
Click to expand...
Click to collapse
sounds like "i download as fast as i can the sources, do a "make gingerbread"
in the command line and release a build to megaupload.com...
i can say, there is a very small knowledge of how to build a android system from source - you need a lot of hours to get the system compiled so that most stuff
is working^^
andy572 said:
sounds like "i download as fast as i can the sources, do a "make gingerbread"
in the command line and release a build to megaupload.com...
i can say, there is a very small knowledge of how to build a android system from source - you need a lot of hours to get the system compiled so that most stuff
is working^^
Click to expand...
Click to collapse
I know that Andy
I'm not stupid
But you need to download sources and merge LG sourcecode before you can start anyway
So far the simple . build/envsetup.sh, lunch and make seem to work fine with 2.3.4 source, after compiling is complete we'll see if I got a working rom.
If al works fine I can start to modify and build again, so I've got hours and hours of mostly waiting
_Arjen_ said:
I know that Andy
I'm not stupid
But you need to download sources and merge LG sourcecode before you can start anyway
So far the simple . build/envsetup.sh, lunch and make seem to work fine with 2.3.4 source, after compiling is complete we'll see if I got a working rom.
If al works fine I can start to modify and build again, so I've got hours and hours of mostly waiting
Click to expand...
Click to collapse
Lol, look to my sources and compare it to lg's. Theren are nothing usefull except kernel.
After compiling you'll get default android that probably can start in emulator
mik_os said:
Lol, look to my sources and compare it to lg's. Theren are nothing usefull except kernel.
After compiling you'll get default android that probably can start in emulator
Click to expand...
Click to collapse
I love your sources because they gave me some really useful infos
mik_os said:
Lol, look to my sources and compare it to lg's. Theren are nothing usefull except kernel.
After compiling you'll get default android that probably can start in emulator
Click to expand...
Click to collapse
Nope, it runs on the phone,
did similar thing to build eclair (needed to change some things before I could build) and got it booting to our phone with froyo kernel, only a little hacking needed to get all working. Only gsm and bluetooth are not yet fully working on eclair, other things seem fine so far.
but will take a look at your sources, because you could be right there are better ways
Edit:
GB building is ready and working fine after flashing (using new baseband)
Just tried this because it was fun. Now I'm going back to get eclair fully working
The only GB-build I want to use is CM7, no-one needs just another GB while we have three good ones: Miks CM7, Andy's GB/CM7 and Noejns void #forever and with Franco's kernel these builds rock
Sorry Ciaox, forgot your coming GB-rom
Not sure if this is common knowledge but LG has posted all their sources for all the models.
This should hopefully help things
lg.com/global/support/opensource/opensourceList?types=ALL&search=G2
PS. I'm posting in the general forum as I don't have permission to post in the dev forum (as I recently registered). If anyone can move this thread or even just copy the link to the relevant threads. Thanks
Edit: I can't even post links so I had to remove www from the start, which breaks the link . Just add www or on the page just enter G2 into the search box
McCaffers said:
Not sure if this is common knowledge but LG has posted all their sources for all the models.
This should hopefully help things
lg.com/global/support/opensource/opensourceList?types=ALL&search=G2
PS. I'm posting in the general forum as I don't have permission to post in the dev forum (as I recently registered). If anyone can move this thread or even just copy the link to the relevant threads. Thanks
Edit: I can't even post links so I had to remove www from the start, which breaks the link . Just add www or on the page just enter G2 into the search box
Click to expand...
Click to collapse
If this is correct we can start a AOSP build with it
Thanks!
Sent from my LG-D800 using Tapatalk 2
https://www.lg.com/global/support/opensource/opensourceList?types=ALL&search=G2
There you go. Yeah, hopefully this gets the ball rolling.
Sent from my VS980 4G using Tapatalk 4
Hopefully if this is the case we will start seeing those great aosp aokp or even CM roms I'm not regretting getting this phone one bit
Sent from my LG-D800 using XDA Premium HD app
I've been going over what's available. There are two zips in the source files, android build and the kernel build and a readme file.
This is what is in the readme file:
1. Android build
- Download original android source code ( jelly bean 4.2.2_r1.2 ) from source.android.com
- Untar opensource packages of LG-D802(G2)_Android_JB_D802_10a_Android.tar.gz into downloaded android source directory
- And, merge the source into the android source code
- Run following scripts to build android
a) source build/envsetup.sh
b) lunch
c) make -j4
- When you compile the android source code, you have to add google original prebuilt source(toolchain) into the android directory.
- After build, you can find output at out/target/product/generic
2. Kernel Build
- Uncompress using following command at the android directory
tar xvzf LG-D802(G2)_Android_JB_D802_10a_Kernel.tar.gz
- When you compile the kernel source code, you have to add google original prebuilt source(toolchain) into the android directory.
- Run following scripts to build kernel
a) cd kernel
b) export PATH=$PATH:tools/lz4demo
c) make ARCH=arm CROSS_COMPILE=../prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi- g2-open_com-perf_defconfig zImage -j4
* "-j4" : The number, 4, is the number of multiple jobs to be invoked simultaneously.
* lz4demo : More information can be found at "https://code.google.com/p/lz4/"
- After build, you can find the build image(zImage) at arch/arm/boot/
Click to expand...
Click to collapse
I'm going to have a test this evening and see what I can do. I'm an experienced programmer but this will be a first for building android. I need to research into recovery first, in case I mess up. Once I know I can recovery my device I'll blast away at developing.
McCaffers said:
I've been going over what's available. There are two zips in the source files, android build and the kernel build and a readme file.
This is what is in the readme file:
I'm going to have a test this evening and see what I can do. I'm an experienced programmer but this will be a first for building android. I need to research into recovery first, in case I mess up. Once I know I can recovery my device I'll blast away at developing.
Click to expand...
Click to collapse
As long as you can get into download mode, volume up and put usb cable in when it's off, you can restore the phone. Check the sticky on top.
I'm just happy they posted the source because I'm thinking the content adaptive brightness is in the kernel because it can't be disabled on a software level. cmon Devs!! woot lol
Sent from my VS980 4G using Tapatalk 4
LG G2 hands on
Guys check out the India's first hand review of LG G2 on Mobile Jury's You Tube channel. :good:
exciting news! can't wait for future development!
This has been started for people interested in porting other ROM's for the Nubia Z7 Mini (NX507J). If you are interested in seeing/using/asking questions about ROM's that currently exist, please use the thread created by @Seyron here. I previously posted the following information on that thread, but feel a new thread will be better so the other can be used for people with questions about existing ones.
I'm not sure what you mean by a good background for going at it; however, I think having a good understanding of computers and even some basic programming is very helpful. As for myself, everything is self-taught. I'm pretty familiar with mac, PC, and linux. Even if you are completely new at it, there is lots of good information out there - I would just encourage you to start by learning from credible and well established sources. I have only tried porting for nubia Z7 mini - no other android. I previously used the iphone (and am frankly glad I now have android).
It really depends on whether you want to do a simple port (that's how I call it - don't know if there's an official way of calling it) or port from source. If you are doing a simple port, you can use any computer (mac, pc, linux); however, if you want to port/build from source it is by far the easiest to do it from Linux. There are many resources out there for building/porting from linux - most of which are using Ubuntu. I personally use Debian (which incidentally Ubuntu was created from; however, they are now each distinct and different), but you could use most any linux distro as long as you are comfortable using the command line. Also, if you are using linux, make sure you have enough hard drive space available (most recommended is at least 30GB) and have enough RAM (I have 16GB - minimum recommended is 8GB). It's also very helpful if you have a large swap set up as it makes building go faster. Once you have everything put together, compiling/building takes 3-5 hours depending on the specs of your computer. I have a 1.7ghz i5 in my computer and it is slow - 4-5 hour range for me.
For the sources list below, please note I have no affiliation with them and do not know them. Use at your own risk, I assume no responsibility for what may happen to your computer or phone.
I think some of the best (and frankly most detailed) information comes from the android source code website and from XDA-University.
https://source.android.com/index.html
XDA-University
For what I call simple porting, can be done on any computer - this was the site I started with and it seemed to work except that I kept getting boot loop issues. There are many other sites out there with nearly identical information. This person uses a PC, but you can adjust it quite simply for doing this on mac or linux too:
http://seekandroid.info/2014/05/porting-android-roms-for-your-phone.html
The following site/instructions are very interesting as they are different than any other site I found out there with porting instructions. I have not done it this way - primarily because I am concerned about "bricking" my phone. The method this person uses is the same; however, the files that they transfer are opposite to most any other site I've found. I have not used these instruction - be very cautious until someone else can confirm.
http://anythingsyouneed.blogspot.com/2014/06/how-to-port-custom-rom-rom-porting.html
This one seems interesting; however, I have not used anything on this website and have not used one of the Kitchen programs.
http://www.littlegreenrobot.co.uk/tutorials/how-to-cook-your-own-android-rom/
Android - excellent and very detailed. Personally I think most helpful to those with intermediate to advanced programming knowledge. Or at least have the ambition and time to learn.
https://source.android.com/source/building-devices.html
XDA-University - Truly amazing wealth of information, approachable for anyone from absolute beginners to advanced programers.
http://xda-university.com/as-a-developer
http://xda-university.com/as-a-developer/porting-aosp-roms-using-source-code
I've been busy and haven't had a chance to use these pages yet, but it's what I'm going to do next to try and solve the boot loop errors.
http://xda-university.com/as-a-user/zip-based-rom-tweaking
http://xda-university.com/as-a-user/how-to-recover-from-a-bootloop
If anyone has anything to add, please do. I'd be interested in seeing what else people use.
I haven't found the required sources to port from source, so I don't know if that's possible. Neither am I experienced in any of that.
In basic porting I do, however so far it has been unsuccesful for the Z7 Mini.
I have tried to port CM11S from the OPO, but it didn't work out, the phone became stuck in a bootloop, and logcat wasn't working to find out what's the problem of not booting. Might be dual-sim related but that should more likely run into a non-working sim/ril or a lot of crashes, not making it not booting at all.
I do wonder how they got the CM11 / Mokee with eng/ch languages to work. Tried using those as base too but that didn't do the trick.
To build completely from source you need to have the kernel source.
ZTE has not yet released it, but I'm hoping it will be released soon.
You can check here.
On Github there's a repo but it's apparently broken.
Anyway you can build cyanogenmod without having the kernel source (http://wiki.cyanogenmod.org/w/Doc:_porting_intro)
As soon as I get my own device I'll try that.
Nice, will follow this thread
I was trying to port the Z7 Max CM11 to the Z7 Mini, still work in progress because i'm new at this...
So, do you have any idea how the existing ROM's were ported then? If they weren't from source, we should be able to port others without getting the boot loop error - in theory. Not finding the kernel source is the main reason (besides finding the time) why I haven't worked on porting others. I also cannot find the vendor tree for the phone - which incidentally, may well be part of the kernel source. If you can port CM without source the others should be equally possible. Personally, I'm not interested in a CM based ROM (although a couple I listed in the other thread that I tried porting were CM based); I'm more interested in an AOSP based ROM. I wonder why ZTE has been so slow to release the kernel? Especially since they've released all the others (albeit not the other Z7's) and they have been so popular.
Also, as I stated in the other thread, I was able to get a couple to boot, but they were stuck in boot loop issues. I forgot to use logcat to see what the issue was.
@voetbalremco I agree with you, how did they get MoKee and MIUI to work? I tried using MoKee as base too - though didn't try MIUI. Does anyone know if it's possible to extract the kernel from the current stock ROM?
pierg75 said:
To build completely from source you need to have the kernel source.
ZTE has not yet released it, but I'm hoping it will be released soon.
You can check here.
On Github there's a repo but it's apparently broken.
Anyway you can build cyanogenmod without having the kernel source (http://wiki.cyanogenmod.org/w/Doc:_porting_intro)
As soon as I get my own device I'll try that.
Click to expand...
Click to collapse
pedrud said:
So, do you have any idea how the existing ROM's were ported then? If they weren't from source, we should be able to port others without getting the boot loop error
Click to expand...
Click to collapse
There are different ways to port a Rom...or you build it from scratch, so you compile everything. And for that you need source for every component.
Or you can use the various kitchens (this one for example) to repack and tweak an existent rom.
pedrud said:
Does anyone know if it's possible to extract the kernel from the current stock ROM?
Click to expand...
Click to collapse
You can do it with the kitchen above or using one of the tools available (like this one for example.
Probably everything can be done with dd (as mentioned in the cyanogenmod guide).
Hopefully my device will be her soon, so I can also try these as well
pierg75 said:
There are different ways to port a Rom...or you build it from scratch, so you compile everything. And for that you need source for every component.
Or you can use the various kitchens (this one for example) to repack and tweak an existent rom.
You can do it with the kitchen above or using one of the tools available (like this one for example.
Probably everything can be done with dd (as mentioned in the cyanogenmod guide).
Hopefully my device will be her soon, so I can also try these as well
Click to expand...
Click to collapse
Thanks for the resources! I think combining those two, plus the info on the CM website, and what's on XDA-University; I should be able to get this figured out. Now all I need to do is find the time.
Today my phone arrived! Tomorrow I'll pick it up and start to do some tests.
Sent from my Nexus 7 using Tapatalk
Here it is Kernel source code for NX507J
github.com/ztemt/Z7Mini_NX507J_H128_kernel
felipebarney said:
Here it is Kernel source code for NX507J
github.com/ztemt/Z7Mini_NX507J_H128_kernel
Click to expand...
Click to collapse
I thought that was the kernel that was either incomplete or broken. Do you know otherwise? I had seen it previously, but had read there were errors with it. If not, that's great! I also wonder if it has the "fixes" that ZTE has made for wifi, BT, etc in the recent updates.
pedrud said:
I thought that was the kernel that was either incomplete or broken. Do you know otherwise? I had seen it previously, but had read there were errors with it. If not, that's great! I also wonder if it has the "fixes" that ZTE has made for wifi, BT, etc in the recent updates.
Click to expand...
Click to collapse
I found on the nubia.cn, but i don't know if this have issues... Anyway last updated was 22 days ago, I hope they have fixed...
felipebarney said:
I found on the nubia.cn, but i don't know if this have issues... Anyway last updated was 22 days ago, I hope they have fixed...
Click to expand...
Click to collapse
Can you post the link where you originally found it? Thanks.
pedrud said:
Can you post the link where you originally found it? Thanks.
Click to expand...
Click to collapse
bbs.nubia.cn/thread-266348-1-1.html
:good:
felipebarney said:
bbs.nubia.cn/thread-266348-1-1.html
:good:
Click to expand...
Click to collapse
Thanks. Although, one person commented on the thread that it is nubia development and isn't open source yet. Won't know for sure and I'm not totally sure how to tell from looking at it. May have to keep waiting - or at least dig a little deeper. Thanks again.
So I started to try to build something with CM-11.
I thought I could put my steps here, in case someone else needs them (or has a better way to do it):
1) Get the repo uility:
Code:
mkdir ~/bin
PATH=~/bin:$PATH
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
2) Initialize the repository:
Code:
repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
3) Sync the repository:
Code:
repo sync
This will take a while (the repo is pretty big).
I've taken some infos from the phone (build.prop, partitioning, kernel, boot.img).
I'll continue as soon as the repo is sync'ed.
Repo sync'ed, now build the environment:
Code:
. build/envsetup.sh
At this point we have to build the structure as explained here
Make sure you have the boot.img extracted (see previous posts about a tool).
Make sure you have the utility "unpackbootimg" installed.
I downloaded from https://github.com/osm0sis/mkbootimg/blob/master/unpackbootimg.c and compiled with:
Code:
gcc -o unpackbootimg unpackbootimg.c
Put it in your $PATH.
Then run the commands to create the directory structure:
Code:
./build/tools/device/mkvendor.sh nubia NX507J ../original/boot.img
"nubia" and "NX507J" come from the build.prop, respectively
Code:
ro.product.manufacturer=nubia
ro.product.device=NX507J
The result from the mkvendor.sh is:
Code:
[...]
Use the following command to set up your build environment:
lunch cm_NX507J-eng
And use the follwowing command to build a recovery:
. build/tools/device/makerecoveries.sh cm_NX507J-eng
...to be continued
pierg75 said:
So I started to try to build something with CM-11.
I thought I could put my steps here, in case someone else needs them (or has a better way to do it):
1) Get the repo uility:
Code:
mkdir ~/bin
PATH=~/bin:$PATH
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
2) Initialize the repository:
Code:
repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
3) Sync the repository:
Code:
repo sync
This will take a while (the repo is pretty big).
I've taken some infos from the phone (build.prop, partitioning, kernel, boot.img).
I'll continue as soon as the repo is sync'ed.
Click to expand...
Click to collapse
This is great! Thanks. Are you using a PC or Linux and what OS? Those are the next steps that I want to take. I'm interested in doing it with carbon, omni, and maybe paranoid.
pedrud said:
This is great! Thanks. Are you using a PC or Linux and what OS? Those are the next steps that I want to take. I'm interested in doing it with carbon, omni, and maybe paranoid.
Click to expand...
Click to collapse
Obviously I'm using Linux
No windows here
Sent from my NX507J using Tapatalk
pierg75 said:
Obviously I'm using Linux
No windows here
Sent from my NX507J using Tapatalk
Click to expand...
Click to collapse
That's what I assumed, but hey, you never know. You know what they say when you make assumptions... What distro are you using?
Fedora and Debian...BTW I added few more steps in the previous message.
pierg75 said:
Fedora and Debian...BTW I added few more steps in the previous message.
Click to expand...
Click to collapse
Did you see the post by yiphoming on the other thread that CM11 already exists? Any other ROM's you're interested in?
Hello, community!
Has anyone tried to build AOSP 6.0.1 from source for SM-G925F?
I noticed that Samsung is providing BoardConfig.mk and core.mk and Etc. files. They seem to be pretty much configured for the device..
I followed the instructions provided in the readme file and I am building from the latest MM source for arround 30 minutes now using make -j8.
nasko_spasko said:
Hello, community!
Has anyone tried to build AOSP 6.0.1 from source for SM-G925F?
I noticed that Samsung is providing BoardConfig.mk and core.mk and Etc. files. They seem to be pretty much configured for the device..
I followed the instructions provided in the readme file and I am building from the latest MM source for arround 30 minutes now using make -j8.
Click to expand...
Click to collapse
i dont know much about building a rom
Anyway Good Luck I Hope ur work pays off
i assume it didnt work?
As there is no interest nor popularity on this device to stimulate a healthy developer community, I have decided to look into ROM building and what is required. I have followed this three part video in explaining how to build Lineage OS from source to a device. I have made it to part two where I download the Lineage OS source code to my Linux work-space. Where I get stuck is adding the source to the ROM. The question now is How do I attach the Lineage OS source code to the kernel source code for this device?
Information sources...
Part 1 https://www.youtube.com/watch?v=iZmjOlUq_3c&t=1s
Part 2 https://www.youtube.com/watch?v=MGI3NSJFtKA
Part 3 https://www.youtube.com/watch?v=AJCgOHtli64&t=153s
Current Kernel source code from Asus https://www.asus.com/ca-en/Phone/ZenFone-4-ZE554KL/HelpDesk_Download/
Just ordered one. I've never built Lineage OS either, but maybe we can work together to figure it out.
I have the lineage OS sorce code ready to compile on my system. I just need to know how to add the nesary kernel with it. Any ideas?
Any progress?
Sent from my [device_name] using XDA-Developers Legacy app
Nope! Unless you have anything to contribute.
someaguy said:
As there is no interest nor popularity on this device to stimulate a healthy developer community, I have decided to look into ROM building and what is required. I have followed this three part video in explaining how to build Lineage OS from source to a device. I have made it to part two where I download the Lineage OS source code to my Linux work-space. Where I get stuck is adding the source to the ROM. The question now is How do I attach the Lineage OS source code to the kernel source code for this device?
Click to expand...
Click to collapse
I also looked into building Lineage, seems like it's going to be more than I'm willing to commit to, so I'll share what I found in hopes that it will help you or anyone else move forward with this.
I found this restored CM wiki page on the subject: fat-tire.github.io/porting-intro.html (Sorry, can't make it clickable since I'm new)
The gist seems to be that you need to make three directories in the lineage source (note z01kd appears to be the codename for the Zenfone 4 based on the build.prop file I pulled from my phone)
device/asus/z01kd - Device file tree
kernel/asus/z01kd - Kernel
vendor/asus/z01kd - Proprietary blobs
In the above CM guide, it says to use ./build/tools/device/mkvendor.sh to generate the Device file tree from a boot.img file extracted from an update.zip (from Asus) or extracted from the phone, but that didn't work with the version I was trying to do (15.1), mkvendor.sh wasn't there at all. So I explored option #2 which was to fork an existing device file tree repo from a similar device and tweak it for the device you want to port and I found that the Zenfone Max Pro M1 (X00TD) (github.com/LineageOS/android_device_asus_X00TD) is the closest lineage supported device that we could copy from (at least that I could find). It looks like you might even be able to use the same kernel as that device (github.com/LineageOS/android_kernel_asus_sdm660) because the SOCs are pretty close (Snapdragon 630 vs Snapdragon 636), but you may need to use the stock kernel that you linked to in your original post, not sure.
There's a part in the lineage docs about building from source (only for supported devices) (wiki.lineageos.org/devices/X00TD/build#extract-proprietary-blobs) about extracting proprietary blobs (wiki.lineageos.org/extracting_blobs_from_zips.html) for the vendor/asus/z01kd folder. It said that you could use a lineage update.zip, but I was able to do it with the Asus update.zip. Don't know if that will work or not, but it seems like the only option since the Zenfone 4 doesn't have a lineage update.zip to pull proprietary blobs from.
And that's about as far as I got
Once you have those three folders set up and properly configured you should in theory be able to build it.
Update 9/3/2018
I just found the device file tree and kernel for Zenfone 4 that @shakalaca used to build TWRP. Looks like there are some different naming conventions from what lineage would expect (omni_Z01K.mk vs lineage.mk), but a lot of the stuff looks to be the same (eg BoardConfig.mk) and the files that do have a different name look like they're roughly equivalent.
github.com/TeamWin/android_device_asus_Z01K - Zenfone 4 TWRP device file tree
github.com/shakalaca/android_kernel_asus_ze554kl - Zenfone 4 TWRP kernel
Between these and the above X00TD device file tree and kernel links, we should be able to get pretty close to a working config.
What if you compile what you have and see if it boots on your device?
someaguy said:
What if you compile what you have and see if it boots on your device?
Click to expand...
Click to collapse
Sorry...I already deleted the environment I had set up, to reclaim the 50+ GB of disk space.
If it's any consolation, I never made it far enough for it to build successfully.
I am trying to build Lineage OS too
In this guide(https://forum.xda-developers.com/chef-central/android/guide-android-rom-development-t2814763)
It says we need three files(device tree,kernel,vendor) to build it.
We have kernel and device tree from github(https://github.com/TeamWin/android_device_asus_Z01K)
but we still need vendor from our device,and the commend under this guide(https://www.isthnew.com/archives/build-lineageos.html) says that we can get vendor files by running "extract-files.sh".
But where can we find that?
(Sorry for my bad English
rol.
try to look here.https://forum.xda-developers.com/pr.../tool-capire-le-treble-terble-vendor-t3774629
I have tried that CLT project,but it didn't work
Maybe use this?
https://forum.xda-developers.com/axon-7/development/tool-party-v0-1-vendor-partition-t3831517