FORUMS

AOSP 5.1 Lollipop for Nexus Q

Google Nexus Q is an intriguing device released with Android 4.0 Ice Cream Sandwich. It was abandoned by … more

XDA Picks: Best Apps of the Week (Apr 17 – 24)

Apps are at the front and center of any smartphone experience, and with over a … more

Glimpse Notifications: Easier Lockscreen Notifications

Lollipop brought a revamp to the lockscreen, taking away custom widgets but … more

What Are the Best Looking Apps on Android?

As more developers are updating their apps with Material Design elements, we’re … more
Post Reply Subscribe to Thread Email Thread

[Guide] Building from sources [Kernel only for now]

14th November 2012, 01:00 PM |#11  
Member
Thanks Meter: 9
 
More
Angry
Hello, Cdesai.
Thanks for your guide!
I will do my best to learn it.
 
 
14th November 2012, 11:48 PM |#12  
Senior Member
Flag Atlanta, GA
Thanks Meter: 88
 
More
so you say that you need to make the zImage into a boot.img (being a noob about this...) on my SGSII, I can flash zImages and boot.img, so I'm confused, lol
15th November 2012, 01:12 AM |#13  
renzyyy's Avatar
Junior Member
Flag Milwaukee, WI
Thanks Meter: 16
 
More
Quote:
Originally Posted by jrod091

so you say that you need to make the zImage into a boot.img (being a noob about this...) on my SGSII, I can flash zImages and boot.img, so I'm confused, lol

i think it depends on how youre flashing. with the sgsii youre prob using odin/heimdall & it might just overwrite the kernel. flashing with fastboot might require the boot.img cause it contains a ramdisk image after the kernel & is writing a partition. thats just my guess at least, someone else might have a better/more accurate answer for ya
The Following User Says Thank You to renzyyy For This Useful Post: [ View ]
16th November 2012, 12:26 AM |#14  
matt95's Avatar
Recognized Contributor
Flag Verona
Thanks Meter: 2,361
 
Donate to Me
More
Quote:
Originally Posted by renzyyy

i think it depends on how youre flashing. with the sgsii youre prob using odin/heimdall & it might just overwrite the kernel. flashing with fastboot might require the boot.img cause it contains a ramdisk image after the kernel & is writing a partition. thats just my guess at least, someone else might have a better/more accurate answer for ya

yeah that's true, but for instance with HTC S-OFFed devices you don't even need to flash the boot.img....
17th November 2012, 05:02 AM |#15  
renzyyy's Avatar
Junior Member
Flag Milwaukee, WI
Thanks Meter: 16
 
More
Quote:
Originally Posted by cdesai

... To flash it, you need to make it into a boot.img, more on that later. when we have more sources.

you can extract the contents from the factory image & use getramdisk.py to get the ramdisk.img out of the current boot.img (or use this ramdisk.img)

then once youve compiled the kernel successfully, use mkbootimg from android_bootimg_tools.tar.gz to repack your boot.img.

if you want to just test...
fastboot boot [new-boot.img]

and flash if satisfied...
fastboot flash boot [new-boot.img]

just tested out if anyone wants some verification... screenshot
Last edited by renzyyy; 17th November 2012 at 05:35 AM.
The Following 2 Users Say Thank You to renzyyy For This Useful Post: [ View ]
18th November 2012, 06:08 AM |#16  
craigacgomez's Avatar
Senior Member
Flag Lake Forest, CA
Thanks Meter: 3,300
 
Donate to Me
More
@cdesai, shouldn't we be using arm-eabi- instead of arm-linux-androideabi- as CROSS_COMPILE

Code:
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/
export PATH=$PATH:$(pwd)/arm-eabi-4.6/bin
export CROSS_COMPILE=arm-eabi-
Building with arm-linux-androideabi- causes issues with kernel modules... here's an example of such an issue https://groups.google.com/forum/?fro...el/dzEIOVuxtEo

And the most updated kernel branch is android-exynos-manta-3.4-jb-mr1 not android-exynos-manta-3.4-jb-mr1-fr
The Following User Says Thank You to craigacgomez For This Useful Post: [ View ]
18th November 2012, 07:23 AM |#17  
Matthileo's Avatar
Senior Member
Flag Wichita, KS
Thanks Meter: 54
 
More
Is there any chance of this becoming an OC kernel in the future?
18th November 2012, 07:44 AM |#18  
Senior Member
Seattle
Thanks Meter: 270
 
More
Quote:
Originally Posted by craigacgomez

@cdesai, shouldn't we be using arm-eabi- instead of arm-linux-androideabi- as CROSS_COMPILE

Code:
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/
export PATH=$PATH:$(pwd)/arm-eabi-4.6/bin
export CROSS_COMPILE=arm-eabi-
Building with arm-linux-androideabi- causes issues with kernel modules... here's an example of such an issue https://groups.google.com/forum/?fro...el/dzEIOVuxtEo

And the most updated kernel branch is android-exynos-manta-3.4-jb-mr1 not android-exynos-manta-3.4-jb-mr1-fr

Yes, I couldn't get md4 and cifs modules to load with arm-linux-androideabi-4.6:
<3>[ 1250.492203] md4: unknown relocation: 27
<4>[ 1260.230901] cifs: Unknown symbol _GLOBAL_OFFSET_TABLE_ (err 0)

However, with this:
git clone https://android.googlesource.com/platform/prebuilt
export PATH=$PATH:$PWD/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin
export CROSS_COMPILE=arm-eabi-

The modules load okay:
shell@android:/mnt/shell/emulated/0 # lsmod
cifs 269223 0 - Live 0x00000000
md4 3442 0 - Live 0x00000000

(Now I have to work out why neither mount nor cifsmanager are working as expected...)
18th November 2012, 07:57 AM |#19  
craigacgomez's Avatar
Senior Member
Flag Lake Forest, CA
Thanks Meter: 3,300
 
Donate to Me
More
Quote:
Originally Posted by sam3000

Yes, I couldn't get md4 and cifs modules to load with arm-linux-androideabi-4.6:
<3>[ 1250.492203] md4: unknown relocation: 27
<4>[ 1260.230901] cifs: Unknown symbol _GLOBAL_OFFSET_TABLE_ (err 0)

However, with this:
git clone https://android.googlesource.com/platform/prebuilt
export PATH=$PATH:$PWD/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin
export CROSS_COMPILE=arm-eabi-

The modules load okay:
shell@android:/mnt/shell/emulated/0 # lsmod
cifs 269223 0 - Live 0x00000000
md4 3442 0 - Live 0x00000000

(Now I have to work out why neither mount nor cifsmanager are working as expected...)

I know the reason... busybox needs to be patched... i guess it's something new in 3.4.5 kernel... I haven't done the patch yet

https://github.com/OpenELEC/OpenELEC...901d208cf4fff9
18th November 2012, 08:07 AM |#20  
Senior Member
Seattle
Thanks Meter: 270
 
More
Quote:
Originally Posted by craigacgomez

I know the reason... busybox needs to be patched... i guess it's something new in 3.4.5 kernel... I haven't done the patch yet

https://github.com/OpenELEC/OpenELEC...901d208cf4fff9

I had actually just got to the point of realising I could make it work by explicitly setting the unc path in mount command options. The missing patch would explain it.
Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes