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

Root [Discussion - Developers _ONLY_] Building ICS from source (Isaac's github).

Ok I'm going to try and get the source code from Motorola... I tried live support first and got referred to the level 2 technical department so we'll see how that goes... I hope I can get somewhere, but we'll see...

Edit: also aren't they obligated to give us the source code for the kernel? Don't they break some regulation or something by not providing it?

Marc,

The kernel source is located here

Triumph WX435 / Home / Home
 
Wait so what is Whyzor talking about then... Is that the kernel source?

Both links are not new. The source code for Android was released and in CM9, the source code for the MT kernel is also what our current builds are using. It's actually not the source code for the .39 version of their shipping phones.

I was talking about keeping an eye out for the kernel source code for the new Huawei device that runs ICS, which will not work on the MT straight out, but may help us port a newer kernel for ICS on the MT.
 
Ok I'm going to try and get the source code from Motorola... I tried live support first and got referred to the level 2 technical department so we'll see how that goes... I hope I can get somewhere, but we'll see...

Edit: also aren't they obligated to give us the source code for the kernel? Don't they break some regulation or something by not providing it?

Triumph WX435 / Home / Home Triumph source EDIT: while I was typing this, several people beat me to it. funny

The Huawei Honor got a ICS rom, it has a MSM8255 and Adreno 205 gpu, specs very similar to Triumph. I'm sure the source code would help but they removed the download from the site.

Here is an XDA forum post about a custom rom being built from the ICS beta that huawei released, with a download link.

hope this helps someone as well.

[ROM] u8800pro&u8800-ICS-beta:base on u8860-4.0-demo - xda-developers


double edit:

found some more stuff.

the Droid Incredible 2 has the same MSM8655 we have, and here is a ICS rom from it.

http://rootzwiki.com/topic/9984-rom-ice-cream-sandwich-incredible-2-403-christmas-edition/

Also, heres an Alpha ICS rom I found for the HTC Thunderbolt, which uses the same SoC

http://www.addictivetips.com/mobile/htc-thunderbolt-gets-ice-cream-sandwich-rom-download-install/

I know these arent source, but the Droid incredible 2 rom looks to have the most stuff functional. I wonder if someone asked the dev of that rom for his source some of that could help our phone?

im not a dev, but i watch this thread and only post if I have something useful to share. hope these help!!
 
Triumph WX435 / Home / Home Triumph source EDIT: while I was typing this, several people beat me to it. funny

The Huawei Honor got a ICS rom, it has a MSM8255 and Adreno 205 gpu, specs very similar to Triumph. I'm sure the source code would help but they removed the download from the site.

Here is an XDA forum post about a custom rom being built from the ICS beta that huawei released, with a download link.

hope this helps someone as well.

[ROM] u8800pro&u8800-ICS-beta:base on u8860-4.0-demo - xda-developers


double edit:

found some more stuff.

the Droid Incredible 2 has the same MSM8655 we have, and here is a ICS rom from it.

[Rom] Ice Cream Sandwich Incredible 2 4.0.3 [Christmas Edition] - RootzWiki

Also, heres an Alpha ICS rom I found for the HTC Thunderbolt, which uses the same SoC

HTC Thunderbolt Gets Ice Cream Sandwich ROM [Download & Install]

I know these arent source, but the Droid incredible 2 rom looks to have the most stuff functional. I wonder if someone asked the dev of that rom for his source some of that could help our phone?

im not a dev, but i watch this thread and only post if I have something useful to share. hope these help!!

i may sound extreamly dumb here.... but could we take a lil bit from each rom and put it into one to make everything work? :confused:
 
UPDATE: So I was sick today from work but not to sick to work on ICS :D. As of right now I have both ICS and CM9 building. The ICS has been running for about 2 1/2 hours with no major errors and I just started CM9 on the other system. I think I resolved my audio issue so will see if the builds actually build :eek:
 
Both links are not new. The source code for Android was released and in CM9, the source code for the MT kernel is also what our current builds are using. It's actually not the source code for the .39 version of their shipping phones.

I was talking about keeping an eye out for the kernel source code for the new Huawei device that runs ICS, which will not work on the MT straight out, but may help us port a newer kernel for ICS on the MT.

Oh... OK that was confusing me lol... So we want a 3.0 kernel source then?
 
slightly off topic, but installed CM9 Alpha 0 on my touchpad last night.. its SUCH an improvement over GB 2.3.7 its not even funny... so hopefully we can get it running!
 
slightly off topic, but installed CM9 Alpha 0 on my touchpad last night.. its SUCH an improvement over GB 2.3.7 its not even funny... so hopefully we can get it running!

Yea from the looks of it ICS is going to be awesome and speed improvements. I hope we can get it running as well as running with the 3.0 kernel which will help as well :D. If we could get hardware acceleration and the radio (and maybe wifi) working I would use it as my daily! But that seems to be a ways a way :/.
 
Hey guys,
First of all I would like to say thanks to all of you who have dedicated your time to getting this ICS project to where it is today. Ive been following this thread on and off for a while now, and now that I have some free time I would love to get involved. I am a computer engineering student, and I have a strong background in Java, C, and C++, as well as a decent understand of Linux. I would love to get involved in any way that I can.

Tonight I am going to follow the guide for building cm7, and once I get all of that working I'll attempt to move over here and catch up to you guys, and hopefully be able to help this project move along faster.
If anyone has any suggestions or anything to help me catch up to where you are currently at, please PM me as I would love to be contributing ASAP!

Thanks in advance guys
-Rob
 
Not sure if anyone can assist with this error, I am not finding anything easy to fix this one. Here is the whole error

Code:
root@moto:~/ICS_SOURCE# make -j1 otapackage
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.3
TARGET_PRODUCT=full_triumph
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=IML74K
============================================
No private recovery resources for TARGET_DEVICE triumph
Package OTA: out/target/product/triumph/full_triumph-ota-eng.root.zip
unzipping target target-files...
  running:  unzip -o -q out/target/product/triumph/obj/PACKAGING/target_files_intermediates/full_triumph-target_files-eng.root.zip -d /tmp/targetfiles-PgCV6P
--- target info ---
blocksize                 = (int) 262144
boot_size                 = (int) 8388608
default_system_dev_certificate = (str) build/target/product/security/testkey
extfs_sparse_flag         = (str) -s
fstab                     = (dict) {'/sdcard': <common.Partition object at 0x87afd8c>, '/cache': <common.Partition object at 0x87afc6c>, '/boot': <common.Partition object at 0x87afc0c>, '/system': <common.Partition object at 0x87afd2c>, '/sd-ext': <common.Partition object at 0x87afdec>, '/data': <common.Partition object at 0x87afccc>}
recovery_api_version      = (int) 3
system_size               = (int) 260046848
tool_extensions           = (str) device/moto/triumph/../common
userdata_size             = (int) 1191182336
using device-specific extensions in device/moto/common
building image from target_files BOOT...
  running:  mkbootfs /tmp/targetfiles-PgCV6P/BOOT/RAMDISK
  running:  minigzip
  running:  mkbootimg --kernel /tmp/targetfiles-PgCV6P/BOOT/kernel --cmdline console=ttyMSM1 androidboot.hardware=triumph --base 0x00200000 --pagesize 4096 --ramdisk /tmp/tmp4UuxJn --output /tmp/tmpBowHQy
building image from target_files RECOVERY...
  running:  mkbootfs /tmp/targetfiles-PgCV6P/RECOVERY/RAMDISK
  running:  minigzip
  running:  mkbootimg --kernel /tmp/targetfiles-PgCV6P/RECOVERY/kernel --cmdline console=ttyMSM1 androidboot.hardware=triumph --base 0x00200000 --pagesize 4096 --ramdisk /tmp/tmpWH6un5 --output /tmp/tmpykKZ0V
  running:  imgdiff /tmp/tmpeetZ2j /tmp/tmpbETLSR /tmp/tmpTQuM0o
Traceback (most recent call last):
  File "./build/tools/releasetools/ota_from_target_files", line 832, in <module>
    main(sys.argv[1:])
  File "./build/tools/releasetools/ota_from_target_files", line 800, in main
    WriteFullOTAPackage(input_zip, output_zip)
  File "./build/tools/releasetools/ota_from_target_files", line 407, in WriteFullOTAPackage
    MakeRecoveryPatch(output_zip, recovery_img, boot_img)
  File "./build/tools/releasetools/ota_from_target_files", line 337, in MakeRecoveryPatch
    recovery_type, recovery_device = common.GetTypeAndDevice("/recovery", OPTIONS.info_dict)
  File "/root/ICS_SOURCE/build/tools/releasetools/common.py", line 821, in GetTypeAndDevice
    return PARTITION_TYPES[fstab[mount_point].fs_type], fstab[mount_point].device
KeyError: '/recovery'
make: *** [out/target/product/triumph/full_triumph-ota-eng.root.zip] Error 1
 
I'm not terribly familiar with the whole build process... but it appears that it's trying to build a recovery image of some sort to shove in /recovery. However, we don't have a /recovery and you haven't defined one in the fstab. So... it's erroring out. Can you tell it to not build any recovery image?
 
slightly off topic, but installed CM9 Alpha 0 on my touchpad last night.. its SUCH an improvement over GB 2.3.7 its not even funny... so hopefully we can get it running!

Seconded... I also put CM9 on my Touchpad and I was blown away at how much better it was than GB Alpha 3.5... it's a true tablet experience...
 
Not sure if anyone can assist with this error, I am not finding anything easy to fix this one. Here is the whole error

Code:
root@moto:~/ICS_SOURCE# make -j1 otapackage
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.3
TARGET_PRODUCT=full_triumph
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=IML74K
============================================
No private recovery resources for TARGET_DEVICE triumph
Package OTA: out/target/product/triumph/full_triumph-ota-eng.root.zip
unzipping target target-files...
  running:  unzip -o -q out/target/product/triumph/obj/PACKAGING/target_files_intermediates/full_triumph-target_files-eng.root.zip -d /tmp/targetfiles-PgCV6P
--- target info ---
blocksize                 = (int) 262144
boot_size                 = (int) 8388608
default_system_dev_certificate = (str) build/target/product/security/testkey
extfs_sparse_flag         = (str) -s
fstab                     = (dict) {'/sdcard': <common.Partition object at 0x87afd8c>, '/cache': <common.Partition object at 0x87afc6c>, '/boot': <common.Partition object at 0x87afc0c>, '/system': <common.Partition object at 0x87afd2c>, '/sd-ext': <common.Partition object at 0x87afdec>, '/data': <common.Partition object at 0x87afccc>}
recovery_api_version      = (int) 3
system_size               = (int) 260046848
tool_extensions           = (str) device/moto/triumph/../common
userdata_size             = (int) 1191182336
using device-specific extensions in device/moto/common
building image from target_files BOOT...
  running:  mkbootfs /tmp/targetfiles-PgCV6P/BOOT/RAMDISK
  running:  minigzip
  running:  mkbootimg --kernel /tmp/targetfiles-PgCV6P/BOOT/kernel --cmdline console=ttyMSM1 androidboot.hardware=triumph --base 0x00200000 --pagesize 4096 --ramdisk /tmp/tmp4UuxJn --output /tmp/tmpBowHQy
building image from target_files RECOVERY...
  running:  mkbootfs /tmp/targetfiles-PgCV6P/RECOVERY/RAMDISK
  running:  minigzip
  running:  mkbootimg --kernel /tmp/targetfiles-PgCV6P/RECOVERY/kernel --cmdline console=ttyMSM1 androidboot.hardware=triumph --base 0x00200000 --pagesize 4096 --ramdisk /tmp/tmpWH6un5 --output /tmp/tmpykKZ0V
  running:  imgdiff /tmp/tmpeetZ2j /tmp/tmpbETLSR /tmp/tmpTQuM0o
Traceback (most recent call last):
  File "./build/tools/releasetools/ota_from_target_files", line 832, in <module>
    main(sys.argv[1:])
  File "./build/tools/releasetools/ota_from_target_files", line 800, in main
    WriteFullOTAPackage(input_zip, output_zip)
  File "./build/tools/releasetools/ota_from_target_files", line 407, in WriteFullOTAPackage
    MakeRecoveryPatch(output_zip, recovery_img, boot_img)
  File "./build/tools/releasetools/ota_from_target_files", line 337, in MakeRecoveryPatch
    recovery_type, recovery_device = common.GetTypeAndDevice("/recovery", OPTIONS.info_dict)
  File "/root/ICS_SOURCE/build/tools/releasetools/common.py", line 821, in GetTypeAndDevice
    return PARTITION_TYPES[fstab[mount_point].fs_type], fstab[mount_point].device
KeyError: '/recovery'
make: *** [out/target/product/triumph/full_triumph-ota-eng.root.zip] Error 1

I would suggest inserting Mantera's working kernel for ICS since we know that works with ICS. It can be found in this post earlier. Extract the zImage from the boot.img and put it in as: /device/motorola/triumph/kernel.

As for the building recovery failure. Try cloning the gingerbread device branch and compare differences (using 'diff') to find if there's a config or flag that isn't set correctly.
 
I will take a look at it tonight, as of this AM I have CM9 building again. It failed on my VM last night as it ran out of ram.
 
I get stuck at 99 percent when fetching projects from github.

Nvm. I fixed that but got this:

fatal: This operation must be run in a work tree
Traceback (most recent call last):
File "/home/rob/android/system/.repo/repo/main.py", line 366, in <module>
_Main(sys.argv[1:])
File "/home/rob/android/system/.repo/repo/main.py", line 346, in _Main
result = repo._Run(argv) or 0
File "/home/rob/android/system/.repo/repo/main.py", line 137, in _Run
result = cmd.Execute(copts, cargs)
File "/home/rob/android/system/.repo/repo/subcmds/sync.py", line 443, in Execute
project.Sync_LocalHalf(syncbuf)
File "/home/rob/android/system/.repo/repo/project.py", line 974, in Sync_LocalHalf
self._InitWorkTree()
File "/home/rob/android/system/.repo/repo/project.py", line 1757, in _InitWorkTree
raise GitError("cannot initialize work tree")
error.GitError: cannot initialize work tree


does this even matter? i seem to have all of the files.
 
the Gingerbread tree, I'm just trying to compile cm7 to make sure I have everything set up correctly.

also when I
cd ~/android/system/device/motorola/triumph
to pull proprietary files, there is no such directory. Should mkdir it or is it supposed to exist allready?


NEVERMIND ALL OF THAT

lol idk what was up but i ran the repo sync again a few times and i got it to sync 100% no weird errors.

Sorry for my ignorance guys, I know your much further ahead with this than the questions I'm asking, but this is my first time working with android dev. Just want to get everything set up so I can start helping!
 
Back
Top Bottom