Triple-boot (Win7/Ubuntu/Meego) Netbook Build for Application Development for Appup

Last month, in preparation for the first Intel Atom Application lab conference at San Jose, CA, I was trying to build system that support the application development on Windows 7 and Ubuntu (both are  OS's that Software Development Kits (SDK) for Intel Atom Developer Program have been tested on) and at the same time, can support the application test on Moblin2.1. I do successfully make Win7/Moblin working, butunfortunately not able to get Ubuntu/Moblin work. So it ended up that I have to use one Netbook to do the application development on Windows, and another Netbook to do the same for Linux. The main issue seems the tricks to handle the conflict of the boot loader of both Ubuntu and Moblin  ( I am assuming the Grub 2) to make them work together, but could not figure that out at that time.

With Meego v 1.0 just available, I decided to get another round of being tortured by Grub 2, and hope to build a Win7/Ubuntu/Meego development/test platform on one ASUS Eee PC Netbook with Intel Atom inside. I tried putting my feet into the shoes of others by doing extensive Google search and followed various rescipe , but couldn't finish with a single success. So I did my own build with numerous threads of people who have tried the same, and  painfully but sucessfully reach my goal eventually. Here is some of howto's steps-by-steps that I would like  to share.

First, install Windows 7 from an external USB DVD-ROM (This step can be skipped if you have a OEM Windows installed. Don't forget that DVD-ROM are gone for a lot of small factor devices these days), followed by manually creating a partition of your preferred size ( 50GB in my case, there are some good partition tools on you can use for free), which will become Win7 in sda2. Window installer will automatically create 100MB partition for you which is called Win7 (loader), and resided in sda1. Don't rush to run any Microsoft Update, install VS2008 or SDK etc. Now here it comes a very critical time save step, which is to create a 30G partition of any format ( NTFS, Fat32) using Windows Device Manager. This primary partition is reserved for the Ubuntu.  After this step is done, go ahead to load Meego on unallocated space.

Download the Meego v1.0 live image  from, and byte-copy it into a USB drive by following the instructions. To boot ASUS Eee PC from a USB, you will need to plug-in your USB thumb drive into a USB port (it is required, or you will not see the Hard Disk Drives option in the BIOS. It took awhile for me to figure that out), and then  press F2 at boot to enter into BIOS at Boot->Hard Disk Drivers. Change the 1st Drive to USB: instead of your HDD: ( Change Boot Device Priority to have Removable Dev. to boot first will never get the system boot to USB drive. This is my sweet two cents). For some Netbook, there is a F12 boot menu option available, but you will have to first enable it in BIOS. Once the Meego is booted from USB, choose install Meego side-by-side with Window 7.  Meego will create 3 partitions on the hard disk (sda5: Meego Boot 260M; Sda6: Meego btrfs; and sda7: Meego swap). By default, Meego hides boot menu to boot directly to Meego(there do have a fraction of second that  you can press enter to get the boo t menu). Go to a terminal in Meego and sudo vi /boot/extlinux.conf and change timeout value (from 0 to 15 or your preference) and comment out hidden menu to show the boot menu, and change default menu to Window. You can change "other" into Windows 7 in your boot menu.( if you need more details, you can check out this post on Meego forum) .Once you get Win7/Meego duo-boot working. Now it is time to get Ubuntu.

Go to www.ubuntu.comand download either a Desktop version or a netbook version of Ubuntu iso image. Follow the instructions on Ubuntu download page to create a USB drive with Ubuntu, and then do the same process as above to install Ubuntu from a USB thumb drive. When it reaches Prepare Disk Space page, just choose the last option "Specify partition manually (advanced)", by now, you will see that Meego auto installer used all free space and nothing is left for Ubuntu. Remember we have manually create a 30G partition pre-reserved for Ubuntu? Sweet!!, just delete that partition and use the available free space to create two partitions manually. One (>20GB) for / on ext4 which will be sda8 and another one (>2GB) for swap which will be sda9. Choose next, and Ubuntu will start the install by trying to install the bootloader on /sda, and following by an error message that the boot loader can not be installed ( actually it will get error on any sdax partition because you have already have a Meego boot loader). Now just choose continue to install Ubuntu without Bootloader. The installation process will complete shortly. If you are lucky, you will be able to see the menu below after reboot. Unknown Linux distribution is Meego. If you are not comfortable about the name, just take the challenge again on Grub 2 and edit it in Ubuntu.

Test Ubuntu, Meego and Window 7 boot separately to make sure it boot.  Windows will probably do a check disk after those boot loader changes, but will not break anything. Now, it is time to load compilers, SDK or whatever your software or tools will be and build your dream application development platform. If you are building a Desktop instead of a Netbook, it probably will be easier.

Pour de plus amples informations sur les optimisations de compilation, consultez notre Avertissement concernant les optimisations.