← Back to team overview

ubuntu-phone team mailing list archive

Re: Ubuntu Touch on Emulator

 

I really want to make the emulator work. But the discussion is a little confused, can Chirayu or   Sergio make a more readable guide for this? 

If the img files(e.g. ramdisk-recovery.img, sdcard image and saucy-preinstalled-touch-armhf.zip) are shared, it would be much better.




To: Ubuntu Touch <ubuntu-phone@xxxxxxxxxxxxxxxxxxx>

From: Chirayu Desai <chirayudesai1@xxxxxxxxx>

Date: Mon, 17 Jun 2013 08:49:01 +0530

In-reply-to: <CAMso8J8GQJ-OEKXQ8X8r-LBLpkWc82_cm2Rk5wiZRA=Aau8W3w@xxxxxxxxxxxxxx>
On 17 June 2013 06:36, Sergio Schvezov <sergio.schvezov@xxxxxxxxxxxxx>wrote: > On Sat, Jun 15, 2013 at 12:44 AM, Chirayu Desai <chirayudesai1@xxxxxxxxx> > wrote: > > > > > > On 15 June 2013 02:24, Sergio Schvezov <sergio.schvezov@xxxxxxxxxxxxx> > > wrote: > >> > >> On Tue, Jun 11, 2013 at 11:17 AM, Chirayu Desai < > chirayudesai1@xxxxxxxxx> > >> wrote: > >> > Hey everyone. > >> > > >> > I've got Ubuntu booting on the Android Emulator (QEMU). > >> > The display is black, but I'm able to get a shell, so I think that's > >> > good > >> > enough for a start. > >> > >> Yup looks like a good start. > > > > :) > >> > >> > >> > It needs forking of two repositories from CyanogenMod: > >> > https://github.com/CyanogenMod/android_sdk/tree/cm-10.1 > >> > https://github.com/CyanogenMod/android_kernel_goldfish > >> > > >> > build/ and bootable/recovery were merged from CyanogenMod, and then > the > >> > below patches were applied. > >> > build/ merges with a minor conflict in tools/roomservice.py, which is > >> > easily > >> > fixable. > >> > Same for bootable/recovery, minor conflict in recovery.c > >> > > >> > Patches: > >> > bootable/recovery/ > >> > https://gist.github.com/chirayudesai/5fb848f0b22a12990613 > >> > >> Not sure this is needed since the we aren't including su in our > >> phablet-10.1 branch[1] > > > > > > It will be needed if you merge from CyanogenMod, and I would prefer that > > since we've got bug fixes from AOSP, some of our own, and some nice > features > > :) > > > > Or we could start adbd in init.recovery.goldfish.rc > > I'm leaving this open until I find out how the recovery work is > progressing[0], I'll be resolving this tomorrow (Monday). > Okay. > > >> > >> > build/ > >> > https://gist.github.com/chirayudesai/7805698423d89e46c1a3 > >> > >> Good, locally applied (going to push soon) > >> > >> > device/generic/goldfish/ > >> > https://gist.github.com/chirayudesai/b9008fd57e7b21abbee1 > >> > >> Good > >> > >> > kernel/goldfish > >> > https://gist.github.com/chirayudesai/00607ba8b0856e37754c > >> > >> And here's the problem, let me explain further down. > >> > >> > https://gist.github.com/chirayudesai/3a4583e83ad68b47363e - needed to > >> > get > >> > ADB working. > >> > >> This link is broken. > > > > Yep, not needed, ignore it > >> > >> > >> > After all of the patches have been applied to the respective > >> > directories, do > >> > the below. > >> > . build/envsetup.sh > >> > lunch cm_goldfish-eng > >> > mka goldfish > >> > >> This works but I like to breakfast and brunch :-) > > > > breakfast will pick userdebug, but we usually use eng for the emulator. > > brunch won't work, since it runs make bacon, and otapackage isn't a > target > > for the emulator > > You are right, but breakfast provides me with roomservice :-) > breakfast calls lunch, so breakfast foo will run lunch cm_foo-userdebug. breakfast cm_goldfish-eng works too, and that'll have the same behaviour as lunch. It's lunch which runs roomservice, so either of this works. > > >> > This will build everything needed. > >> > Next, make a sdcard image using the `mksdcard` tool, which is used to > >> > install "saucy-preinstalled-touch-armhf.zip" > >> > Boot emulator into recovery with `emulator -partition-size 4096 > -ramdisk > >> > $OUT/ramdisk-recovery.img -sdcard <path-to-sdcard>` > >> > Push the zip to /sdcard, and install it. > >> > After that, exit the emulator, and start it again with` emulator > >> > -partition-size 4096` > >> > `adb -e shell` will give you a shell :) > >> > >> The bullet proof test missing was to ubuntu_chroot or just chroot into > >> /data/ubuntu... > >> You will probably not be able to do anything since glibc > >> MIN_KERNEL_SUPPORTED := 2.6.32 > >> > >> > >> And the kernel for the emulator in that repo is 2.6.29 > > > > > > I was able to do that, the default branch in that repository[1] contains > the > > 3.4 kernel, and while I initially tested with 2.6.29, I switched to 3.4 > as > > soon as I hit that > > > >> > >> Any further thoughts on this? > > Ok, so the build[1], device[2] and kernel[3] tree are in. > I've also added a cm.dependency of CyanogenMod/android_sdk to the device. > Thanks :) > > Let's see how this progresses :-) > I had merged CyanogenMod trees locally, so I forgot one patch to build/ [0]. > > Cheers > Sergio > > [0] https://github.com/CyanogenMod/android_build/commit/0f5bb3af4b3a14421885125ce4f9fba328b9bdd8.patch