Post Reply

[HOW-TO] Building CM10, AOKP & TeamBaked For The JB Bootloader [Ubuntu 12.04+ 64-bit]

OP craigacgomez

13th November 2012, 02:42 AM   |  #1  
craigacgomez's Avatar
OP Senior Member
Flag Lake Forest, CA
Thanks Meter: 2,646
 
1,835 posts
Join Date:Joined: Jan 2010
Donate to Me
More
As many of you know, I no longer have my Transformer Prime, and hence cannot continue development for this device. So until the official CM10, AOKP and TeamBaked ROMs are updated to support the new JellyBean bootloader, as a final useful contribution to this device, I decided to provide a how-to guide to help people make their own builds.

This guide assumes that you have some experience building ROMs for Android and that you are comfortable with Linux. It is focused towards building on Ubuntu 12.04+ 64-bit.

1. Prepare the system (common for CM10, AOKP & TeamBaked)

a. Install Java JDK6
Code:
$ wget https://raw.github.com/flexiondotorg/oab-java6/master/oab-java.sh
$ chmod +x oab-java.sh
$ sudo ./oab-java.sh
$ sudo apt-get install sun-java6-jdk
b. Install required applications
Code:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
  zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
  libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
  libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
  libxml2-utils xsltproc zlib1g-dev:i386 schedtool pngcrush
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
c. Get the repo binary
Code:
$ mkdir -p ~/bin
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
2. Building CM10

a. Get the CM10 source
Code:
$ mkdir -p ~/CM10
$ cd ~/CM10
$ repo init -u git://github.com/CyanogenMod/android.git -b jellybean
$ repo sync -j8
b. Get my JB device, kernel & vendor source trees (You could use any other, just make sure it includes the changes needed for the JB bootloader and has the 3.1 kernel)
Code:
//JB device source to device/asus/tf201
$ mkdir -p ~/CM10/device/asus
$ cd ~/CM10/device/asus
$ git clone git://github.com/craigacgomez/android_device_asus_tf201.git -b cm_jb tf201

//JB kernel source to kernel/asus/tf201
$ mkdir -p ~/CM10/kernel/asus
$ cd ~/CM10/kernel/asus
$ git clone git://github.com/craigacgomez/android_kernel_asus_tf201 -b 10.4.2.15-nvtegra tf201

//JB vendor source to vendor/asus/tf201
$ mkdir -p ~/CM10/vendor/asus
$ cd ~/CM10/vendor/asus
$ git clone git://github.com/craigacgomez/vendor_proprietary_asus_tf201 -b jellybean tf201
c. Comment out CMUpdater since this is not an official build (No harm in leaving it there as long as people are instructed not to use it)
Code:
$ cd ~/CM10/vendor/cm/config/
$ gedit common.mk [comment the line which says CMUpdater \]
d. Resync & build
Code:
$ cd ~/CM10
$ repo sync -j8
$ sh vendor/cm/get-prebuilts
$ . build/envsetup.sh && brunch tf201
3. Building TeamBaked

a. Get the TeamBaked source
Code:
$ mkdir -p ~/BAKED
$ cd ~/BAKED
$ repo init -u https://github.com/TeamBAKED/platform_manifest.git -b jb
$ repo sync -j8
b. Delete the tf201 directories
Code:
$ mkdir -p ~/BAKED/device/asus
$ rm -rf tf201
$ mkdir -p ~/BAKED/kernel/asus
$ rm -rf tf201
$ mkdir -p ~/BAKED/vendor/asus
$ rm -rf tf201
c. Get my JB device, kernel & vendor source trees (You could use any other, just make sure it includes the changes needed for the JB bootloader and has the 3.1 kernel)
Code:
//JB device source to device/asus/tf201
$ mkdir -p ~/BAKED/device/asus
$ cd ~/BAKED/device/asus
$ git clone git://github.com/craigacgomez/android_device_asus_tf201.git -b blackbean_jb tf201

//JB kernel source to kernel/asus/tf201
$ mkdir -p ~/BAKED/kernel/asus
$ cd ~/BAKED/kernel/asus
$ git clone git://github.com/craigacgomez/android_kernel_asus_tf201 -b 10.4.2.15-nvtegra tf201

//JB vendor source to vendor/asus/tf201
$ mkdir -p ~/BAKED/vendor/asus
$ cd ~/BAKED/vendor/asus
$ git clone git://github.com/craigacgomez/vendor_proprietary_asus_tf201 -b jellybean tf201
d. Resync & build
Code:
$ cd ~/BAKED
$ repo sync -j8
$ . build/envsetup.sh && brunch tf201
4. Building AOKP

a. Get the AOKP source
Code:
$ mkdir -p ~/AOKP
$ cd ~/AOKP
$ repo init -u https://github.com/AOKP/platform_manifest.git -b jb
$ repo sync -j8
b. Get my JB device, kernel & vendor source trees (You could use any other, just make sure it includes the changes needed for the JB bootloader and has the 3.1 kernel)
Code:
//JB device source to device/asus/tf201
$ mkdir -p ~/AOKP/device/asus
$ cd ~/AOKP/device/asus
$ git clone git://github.com/craigacgomez/android_device_asus_tf201.git -b aokp_jb tf201

//JB kernel source to kernel/asus/tf201
$ mkdir -p ~/AOKP/kernel/asus
$ cd ~/AOKP/kernel/asus
$ git clone git://github.com/craigacgomez/android_kernel_asus_tf201 -b 10.4.2.15-nvtegra tf201

//JB vendor source to vendor/asus/tf201
$ mkdir -p ~/AOKP/vendor/asus
$ cd ~/AOKP/vendor/asus
$ git clone git://github.com/craigacgomez/vendor_proprietary_asus_tf201 -b jellybean tf201
c. Add tf201 to the vendor & build setup
Code:
$ cd ~/AOKP/vendor/aokp
$ gedit vendorsetup.sh
Add this line vendorsetup.sh below add_lunch_combo aokp_tf101-userdebug
Code:
add_lunch_combo aokp_tf201-userdebug
Code:
$ cd ~/AOKP/vendor/aokp/products
$ gedit AndroidProducts.mk
Add this line vendorsetup.sh below $(LOCAL_DIR)/tf101.mk \
Code:
$(LOCAL_DIR)/tf201.mk \
Code:
$ cd ~/AOKP/vendor/aokp/products
$ touch tf201.mk
$ gedit tf201.mk
Add these line to tf201.mk
Code:
# Inherit device configuration for tf201.
$(call inherit-product, device/asus/tf201/full_tf201.mk)

# Inherit some common AOKP stuff.
$(call inherit-product, vendor/aokp/configs/common_tablet.mk)
$(call inherit-product, vendor/aokp/configs/gsm.mk)

PRODUCT_NAME := aokp_tf201
PRODUCT_DEVICE := tf201
PRODUCT_BRAND := asus
PRODUCT_MODEL := Transformer Prime TF201
PRODUCT_MANUFACTURER := asus
PRODUCT_BUILD_PROP_OVERRIDES += \
    PRODUCT_NAME=EeePad \
	BUILD_FINGERPRINT="asus/US_epad/EeePad:4.1.1/JRO03C/US_epad-10.4.2.15-20120917:user/release-keys" \
	PRIVATE_BUILD_DESC="US_epad-user 4.1.1 JRO03C US_epad-10.4.2.15-20120917 release-keys" \

PRODUCT_COPY_FILES +=  \
    vendor/aokp/prebuilt/bootanimation/bootanimation_1280_800.zip:system/media/bootanimation.zip
d. Resync & build
Code:
$ cd ~/AOKP
$ repo sync -j8
$ . build/envsetup.sh && brunch tf201
Last edited by craigacgomez; 16th November 2012 at 04:01 AM.
The Following 35 Users Say Thank You to craigacgomez For This Useful Post: [ View ]
13th November 2012, 03:05 AM   |  #2  
Senior Member
Flag Boise, Idaho
Thanks Meter: 41
 
285 posts
Join Date:Joined: Sep 2010
More
Craig, you are so awesome. Thank you so much for all you have done for the community. I hope I can end up with a nexus so I can continue to follow your development, but I'm also glad for the instruction and inspiration to start figuring out how to do more myself. Thanks again.
13th November 2012, 04:36 AM   |  #3  
qubz's Avatar
Recognized Developer
Flag A parallel dimension
Thanks Meter: 70
 
581 posts
Join Date:Joined: Jun 2007
Donate to Me
More
You're an absolute legend.
I just pressed return to start the build of my first ROM from your previous guide when I saw this..
Last edited by qubz; 13th November 2012 at 07:13 AM. Reason: FIXED: grammar bug
13th November 2012, 05:28 AM   |  #4  
craigacgomez's Avatar
OP Senior Member
Flag Lake Forest, CA
Thanks Meter: 2,646
 
1,835 posts
Join Date:Joined: Jan 2010
Donate to Me
More
Quote:
Originally Posted by qubz

Your an absolute legend.

I'm so sorry if I seem mean... but I just had to do this... I'm a grammar nazi!!
[IMG]http://***********************/instances/100x/30110066.jpg[/IMG]
Last edited by craigacgomez; 13th November 2012 at 05:31 AM.
The Following 2 Users Say Thank You to craigacgomez For This Useful Post: [ View ]
13th November 2012, 07:27 AM   |  #5  
qubz's Avatar
Recognized Developer
Flag A parallel dimension
Thanks Meter: 70
 
581 posts
Join Date:Joined: Jun 2007
Donate to Me
More
Quote:
Originally Posted by craigacgomez

I'm so sorry if I seem mean... but I just had to do this... I'm a grammar nazi!!
[IMG]http://***********************/instances/100x/30110066.jpg[/IMG]

Ha ha, you got me. It's been a long day. Unfortunately the reply box had no compiler, fix uploaded.
Last edited by qubz; 13th November 2012 at 10:19 PM.
13th November 2012, 08:03 PM   |  #6  
Member
Flag Stuttgart
Thanks Meter: 19
 
79 posts
Join Date:Joined: Aug 2010
More
Hey craigacgomez,

thanks for your work.
But I got a problem while trying to build CM10.

Pastebin entry:
http://pastebin.com/st0DfWv4

I'm trying to build it on a server without a gui, what should make no problems. Installed all the requirements you mentioned.

Do you know how to get rid of this error?

Greetz
Chrischdi
14th November 2012, 04:37 AM   |  #7  
craigacgomez's Avatar
OP Senior Member
Flag Lake Forest, CA
Thanks Meter: 2,646
 
1,835 posts
Join Date:Joined: Jan 2010
Donate to Me
More
Quote:
Originally Posted by chrischdi

Hey craigacgomez,

thanks for your work.
But I got a problem while trying to build CM10.

Pastebin entry:
http://pastebin.com/st0DfWv4

I'm trying to build it on a server without a gui, what should make no problems. Installed all the requirements you mentioned.

Do you know how to get rid of this error?

Greetz
Chrischdi

libjli.so is a Java binary... somehow it cannot find it... could you try this...
http://serverfault.com/questions/579...e-or-directory
14th November 2012, 04:05 PM   |  #8  
marko!'s Avatar
Senior Member
Flag Halifax
Thanks Meter: 360
 
755 posts
Join Date:Joined: Feb 2011
Donate to Me
More
Thanks for this.
I'm hoping to keep your work going , this is a great start
its sad that you no longer have a prime though.
sent from my Prime
14th November 2012, 11:17 PM   |  #9  
gunzy83's Avatar
Member
Flag Brisbane, AU
Thanks Meter: 17
 
85 posts
Join Date:Joined: Nov 2010
More
Thanks for posting this! You are an absolute legend! It is a massive help as I just started setting up my build environment for compiling my own CM10 and maybe even look at Paranoid
15th November 2012, 03:56 AM   |  #10  
craigacgomez's Avatar
OP Senior Member
Flag Lake Forest, CA
Thanks Meter: 2,646
 
1,835 posts
Join Date:Joined: Jan 2010
Donate to Me
More
Quote:
Originally Posted by marko!

Thanks for this.
I'm hoping to keep your work going , this is a great start
its sad that you no longer have a prime though.
sent from my Prime

Quote:
Originally Posted by gunzy83

Thanks for posting this! You are an absolute legend! It is a massive help as I just started setting up my build environment for compiling my own CM10 and maybe even look at Paranoid

Nice to see people pick up where I left off... to be honest, all I did for this device was the first time for me... I've just been good at modding and I never dug deep into ROM & kernel work before, so I'm pretty sure you guys could do the same or even better!

The Following User Says Thank You to craigacgomez For This Useful Post: [ View ]
Post Reply Subscribe to Thread

Tags
building, how-to, jb bootloader, tf201
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes