• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Root Building CM12: Work in Progress. Join In!

I wasn't able to help you as much as i wanted to today, but I did check the folders in your .zip file and replaced some of the ones that were missing but tommorow I will have some time to sit and try to compile using the modified kernel you posted and Ill add a few apps from my current setup but, like you will keep trying til we get it. i'll do what I can. Big thanks for the work you put in today. I know it's frustrating but it really is worth it with this phone :)
 
I wasn't able to help you as much as i wanted to today, but I did check the folders in your .zip file and replaced some of the ones that were missing but tommorow I will have some time to sit and try to compile using the modified kernel you posted and Ill add a few apps from my current setup but, like you will keep trying til we get it. i'll do what I can. Big thanks for the work you put in today. I know it's frustrating but it really is worth it with this phone :)

Thanks for all your support!
We really have a great group working on this!
Hopefully it won't be long...
 
Hold On!

I finally remebered reading somewhere (I don't remember where, though :-( ) that Android 5.0 updates actually use a different structure for their zip files (they no longer update file-by-file, rather via a new image). That would be consistent with the zip files that are being produced by my CM12 build!
I have checked other CM12 zip files:
  1. http://forum.xda-developers.com/lg-l90/development/rom-cyanogenmod-12-lg-l90-t2953308
  2. http://forum.xda-developers.com/g2-mini/development/rom-android-5-0-lollipop-d620-t2970709
and that seems to be the case with their files too!

Which leads me to the conclusion that our CM12 is probably being built properly.
However, I'm not sure how that helps us, because I still get stuck at the bootloader after flashing the zip.
I've tried CWM and TWRP (thanks for the idea, @Sands207!) and it's still not working. :-(
As always, if you have any ideas, please chime in!
 
Last edited:
Hold On!

I finally remebered reading somewhere (I don't remember where, though :-( ) that Android 5.0 updates actually use a different structure for their zip files (they no longer update file-by-file, rather via a new image). That would be consistent with the zip files that are being produced by my CM12 build!
I have checked other CM12 zip files:
  1. http://forum.xda-developers.com/lg-l90/development/rom-cyanogenmod-12-lg-l90-t2953308
  2. http://forum.xda-developers.com/g2-mini/development/rom-android-5-0-lollipop-d620-t2970709
and that seems to be the case with their files too!

Which leads me to the conclusion that our CM12 is probably being built properly.
However, I'm not sure how that helps us, because I still get stuck at the bootloader after flashing the zip.
I've tried CWM and TWRP (thanks for the idea, @Sands207!) and it's still not working. :-(
As always, if you have any ideas, please chime in!

i'm fairly certain its the kernel source giving you trouble. have you tried just flashing the boot.img?
or maybe it wasnt bump'd. just a thought. good work though on the right track
 
I wanna buy this phone for $60 and sell my LG Optimus F6.
I know some java, c++, vb and I wish I could help you guys. :( because I don't know much about coding android and ROMs. I wish there was someone that could teach me. I'm really interested in making ROMs. but I don't know where to start.
I have a good system to compile (core i7, 8GB RAM)
And I'm sorry if this topic is not a place for my post. but I'm too much enthusiastic to learn. If you guys have any websites or video that can help me to learn it fast, please pm me.
Thank you everybody, hope you can get it done asap.
 
HAPPY NEW YEARS!

I tried to get back to my original plan today by working on a zv5 build hoping that I could at least get a CM12-generated recovery going...
Following the instructions in the README file included in the package from LG Open Source (check it out on my repo: https://github.com/elisam98/android_kernel_lge_x5/blob/master/README.md),
  1. I created an "out" directory in my "kernel" folder.
  2. I set the environment variables ("export xxx=yyy").
  3. I ran the make command.
I ran into two problems:
  1. The zv5 kernel requires an older version of arm-eabi than what is included in the CM12 repo. I got random errors and couldn't build it. I found the solution in post #15 here. Apparently, CM is building/cross-compiling with the included "cm12/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8" toolchain - I needed arm-eabi-4.6 (based on LG's README), which I got from https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6 (check out https://source.android.com/source/building-kernels.html) and succeeded in building the kernel (woohoo! :))
  2. After I built it, I included the prebuilt folder into my device's BoardConfig.mk by adding this line:
    Code:
    TARGET_PREBUILT_KERNEL := kernel/out/arch/arm/boot
    Problem is, I got an error message:
    build/core/tasks/kernel.mk:63: ***************************************************************
    build/core/tasks/kernel.mk:64: * Using prebuilt kernel binary instead of source *
    build/core/tasks/kernel.mk:65: * THIS IS DEPRECATED, AND WILL BE DISCONTINUED *
    build/core/tasks/kernel.mk:66: * Please configure your device to download the kernel *
    build/core/tasks/kernel.mk:67: * source repository to kernel/lge/x5
    build/core/tasks/kernel.mk:68: * See http://wiki.cyanogenmod.org/w/Doc:_integrated_kernel_building
    build/core/tasks/kernel.mk:69: * for more information *
    build/core/tasks/kernel.mk:70: ***************************************************************
    make: *** No rule to make target `/home/elisam98/cm12/out/target/product/x5/obj/KERNEL_OBJ/usr', needed by `/home/elisam98/cm12/out/target/product/x5/obj/EXECUTABLES/adbd_intermediates/adb.o'. Stop.
    make: *** Waiting for unfinished jobs....
    (I would think that it would still build based on this message, but apparently this was enough to break it :confused:)
So I tried to let CM do the compiling by putting the kernel source back in its place and resetting the BoardConfig settings. Guess what? It didn't work! The compile broke at the same point it was breaking when I tried independently compiling with arm-eabi-4.8.

Therefore I am asking for help in at least getting a CM12-generated bootimage ("mka bootimage") or even a recovery image.
How can I tell CM to use the arm-eabi-4.6 toolchain instead?
I was playing around with the "kernel/AndroidKernel.mk" file, but CM ignored my attempts to force the older toolchain o_O.

What am I missing?
Any ideas?

Also,
if anyone wants the actual prebuilt ZV5 kernel, please let me know. I'll post it if you think you can get something done with it!
And if you want the CM12 build from yesterday (although it doesn't boot :( ), let me know too...

As always, you can join us on the ##LG_VOLT channel on freenode IRC for real-time help and discussions! :)
 
As I detailed in this thread: DeCAF Cyanogenmod 11, Alpha 3(working cell service/semi working data), I am trying hard to build Cyanogenmod 12 for the LG Volt based on LG's newly released ZV5 kernel sources. In deference to what @whoshotjr2006 and others are trying to accomplish with CM11 in that thread, I thought it would be appropriate to start a new separate thread dedicated to building CM12.
I have learned some more about building CM, so I will post detailed (but hopefully better than last time) instructions for setting up a build environment and getting the compile started on your system.

As of now, I have been unable to completely build CM12.
I hope that others will try these steps to compile and post the build errors.
Through the community, we can try to solve these errors together!

EDIT: We got an pre-alpha build, but with problems...see below...

If there is a problem with my instructions, please reply to the thread with any comments!
As you build, if you have ANY build errors, please post them in the reply field. If we work together, we can try to get this configuration to finally build!

You do not need any fancy hardware configuration to build cyanogenmod, but the better your system specs, the faster it will build.

This thread is dedicated to building this configuration, so please keep the comments limited to the above parameters.


------------------------------------------------------------------------------------------

Now for the instructions! Here goes:

Start with a clean install of Debian or Ubuntu (I used Ubuntu 14.10 - you can use any fairly recent version)
To update to the latest sources, run:
Code:
sudo apt-get update
To make sure you don't have any other JDK installed, run:
Code:
sudo apt-get purge openjdk-\* icedtea-\* icedtea6-\*
Then install the latest version of OpenJDK:
Code:
sudo apt-get install openjdk-7-jdk
Install the build dependencies:
Code:
sudo apt-get install git gnupg ccache lzop flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32bz2-1.0 lib32ncurses5-dev x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z1-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc libreadline6-dev lib32readline-gplv2-dev libncurses5-dev bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev squashfs-tools pngcrush schedtool dpkg-dev
.

To get the source, first download "repo" and put it in the system path:
Code:
mkdir ~/bin
PATH=~/bin:$PATH
cd ~/bin
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

Now we're ready to pull the source. This may take a while to complete depending on your connection speed:
Code:
mkdir ~/cm12
cd ~/cm12
repo init -u git://github.com/CyanogenMod/android.git -b cm-12.0
repo sync

Make a new local manifest file:
Code:
mkdir .repo/local_manifests
cd .repo/local_manifests
gedit local_manifest.xml

Here is where we combine the LG Volt code with the already downloaded cyanogenmod sources:
In the text editor, add these lines:


Then resync the repos to grab the new source code:
Code:
cd ~/cm12
repo sync

Initialize the build environment:
Code:
. build/envsetup.sh

Now send the command to build:
Code:
brunch x5

The code will now begin to compile.

------------------------------------------------------------------------------------------
Thank you everyone who contributed and continues to contribute to porting Cyanogenmod to the LG Volt!
@whoshotjr2006, @Bad_MOFO_33, @bakerd62, @adamhos1234, @Sands207, @AnDroiDHackxr, @Corey Fields, and everyone else in these forums (sorry if I missed anyone)

BIG thanks to the guys in the ##LG_VOLT channel on freenode!!!
(especially @Zef_MOFO)

Sources:
  1. http://androidforums.com/threads/de...working-cell-service-semi-working-data.886984
  2. https://source.android.com/source/initializing.html
  3. http://developer.sonymobile.com/kno...ld-aosp-lollipop-for-unlocked-xperia-devices/
  4. http://forum.xda-developers.com/nexus-4/general/guide-cm11-how-to-build-cyanogenmod-11-t2515305

I could use the same instructions to build either CM 11 or 12 on the LG L70 D321 variant correct?
 
Well I finally did get zv5 building properly by just renaming the "cm12/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6" folder I downloaded yesterday to "arm-eabi-4.8" (so I used a dirty trick, now what? :p)
I got my boot.img from the "out" folder and flashed it with Flashify...

...and I rebooted straight into fastboot mode!
In fact, even my recovery was messed up when I tried to boot into that!

Luckily, I had a copy of a TWRP image on my laptop, so I reflashed recovery from there and restored my old backup.

So I had a happy ending :)
But I have no idea how to make the kernel work! :(
 
Well I finally did get zv5 building properly by just renaming the "cm12/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6" folder I downloaded yesterday to "arm-eabi-4.8" (so I used a dirty trick, now what? :p)
I got my boot.img from the "out" folder and flashed it with Flashify...

...and I rebooted straight into fastboot mode!
In fact, even my recovery was messed up when I tried to boot into that!

Luckily, I had a copy of a TWRP image on my laptop, so I reflashed recovery from there and restored my old backup.

So I had a happy ending :)
But I have no idea how to make the kernel work! :(
It's too bad we can't use the zv4 kernel on this one
 
Why not? I'd be willing to try...
[emoji3] I am not sure but I think the zv5 kernel basically addresses our ability to use towelroot and blocks it and other security fixes :/ but as far as usability I'm guessing not much else changed from zv4.

Edit: but it might work :) it's worth a try
 
Last edited:
Don't quote me on this, but I'm pretty sure cm12 uses caf media, audio and display by default. I toyed around with it a few days ago and no matter what flags I set in boardconfig.Mk, it still built caf hardware trees by default.

So with that said, I'd start by taking quarx's cm12 caf msm8226 kernel and adapt it for the volt. If you need any help, pm me and we could set a time to meet on irc and figure out getting stuff working. Bad mofo has a lot of experience in that too, so he would be another good one to ask.
 
Just switched to a new caf kernel: https://github.com/G2Mini-DevTeam/android_kernel_lge_msm8226.
I copied the stock x5_spr_us_defconfig file into their "arch/arm/configs" directory.
I then built a boot and recovery image and flashed recovery with Flashify.
Recovery broke, so I tried booting recovery with fastboot.
Now I have a screenshot of the boot process.
I'm posting it here for debugging.
Anyone know what went wrong?
25ialjs.jpg
 
Last edited:
I wanna buy this phone for $60 and sell my LG Optimus F6.
I know some java, c++, vb and I wish I could help you guys. :( because I don't know much about coding android and ROMs. I wish there was someone that could teach me. I'm really interested in making ROMs. but I don't know where to start.
I have a good system to compile (core i7, 8GB RAM)
And I'm sorry if this topic is not a place for my post. but I'm too much enthusiastic to learn. If you guys have any websites or video that can help me to learn it fast, please pm me.
Thank you everybody, hope you can get it done asap.

I'm acually in the same place.. if anyone could help me in the same way you did him that would be great!;)
 
I'm acually in the same place.. if anyone could help me in the same way you did him that would be great!;)

It's awesome that we have more ppl willing to get on board for devving for this phone! :)
I pretty much learned all I know so far (believe me, there's a lot more!) from googling.

I'm gonna start a new thread with a list (with some repeats from post #1) of sites and resources I found to be very informative.
Good luck and welcome! :)

Link: http://androidforums.com/threads/lg-volt-dev-resources.892502/
 
Last edited:
Just an update: I have gone back to school and I won't be able to devote nearly as much time to this project as I have been able to for the past 2 weeks.
I would love to be able to get this project done, but I can only do it on my free time now :(
If anyone would like to step up and work on this too, PLEASE do so.

Thanks for all your help and support! :)
 
Ok, now I'm completely confused :confused:
I ran a test by independently building the zv3 kernel from LG 's source.
I based my build environment on this thread http://forum.xda-developers.com/showthread.php?t=2770606 (thanks @Bad_MOFO_33 !) and the instructions included in the zip file from LG.
(I don't have the time now, but I would be glad to post exact instructions if anyone wants :) )
The kernel built effortlessly - no major build errors!
I followed the video instructions from the XDA thread I just referenced to build a boot.img and I bumped the image with OpenBump.
However, when I flashed the bumped boot image (with Flashify), my phone booted to fastboot again! I had to restore the boot partition with TWRP.

I'm not even sure what this means :(
Am I compiling wrong? I have been fixing all of the errors as I compile...
Do I need to wipe data and cache before booting?

The only strange thing about my phone (and it's not really that strange) is that I flashed the deodexed ROM I found on these forums... would that make a difference? I can't imagine it would.

Otherwise, I have no idea how to proceed from here...

Ideas?
 
Last edited:
Ok, now I'm completely confused :confused:
I ran a test by independently building the zv3 kernel from LG 's source.
I based my build environment on this thread http://forum.xda-developers.com/showthread.php?t=2770606 (thanks @Bad_MOFO_33 !) and the instructions included in the zip file from LG.
(I don't have the time now, but I would be glad to post exact instructions if anyone wants :) )
The kernel built effortlessly - no major build errors!
I followed the video instructions from the XDA thread I just referenced to build a boot.img and I bumped the image with OpenBump.
However, when I flashed the bumped boot image (with Flashify), my phone booted to fastboot again! I had to restore the boot partition with TWRP.

I'm not even sure what this means :(
Am I compiling wrong? I have been fixing all of the errors as I compile...
Do I need to wipe data and cache before booting?

The only strange thing about my phone (and it's not really that strange) is that I flashed the deodexed ROM I found on these forums... would that make a difference? I can't imagine it would.

Otherwise, I have no idea how to proceed from here...

Ideas?
Try this, i have twrp and i access it by turning the phone off, holding vol down and the pressing and holding power while still holding down until i see the factory reset screen and i let go of vol down and twrp loads. If you hold up instead of down and you have zeroed out the .laf partition fastboot will initialize. It's worth a try :)
 
Try this, i have twrp and i access it by turning the phone off, holding vol down and the pressing and holding power while still holding down until i see the factory reset screen and i let go of vol down and twrp loads. If you hold up instead of down and you have zeroed out the .laf partition fastboot will initialize. It's worth a try :)
His problem I think actually is that the kernel he built causes the phone to boot directly into fastboot rather than the os.
 
Back
Top Bottom