Difference between revisions of "How to get the Meego distribution"
From IGEP - ISEE Wiki
(→Prepare SGX/GLES libraries) |
(→Prepare SGX/GLES libraries) |
||
Line 50: | Line 50: | ||
$ chmod +x create_sgx_package.sh | $ chmod +x create_sgx_package.sh | ||
− | + | Then run | |
$ ./create_sgx_package.sh | $ ./create_sgx_package.sh | ||
Revision as of 16:46, 6 September 2010
Contents
How to get the Meego distribution
MeeGo is an open source, Linux project which brings together the Moblin project, headed up by Intel, and Maemo, by Nokia, into a single open source activity. MeeGo integrates the experience and skills of two significant development ecosystems, versed in communications and computing technologies. The MeeGo project believes these two pillars form the technical foundations for next generation platforms and usages in the mobile and device platforms space.
MeeGo includes:
- Performance optimizations and features which enable rich computational and graphically oriented applications and connected services development
- No-compromise internet standards support delivering the best web experiences
- Easy to use, flexible and powerful UI/app development environment based on Qt
- Open source project organization managed by the Linux Foundation
- State of the Art Linux stack optimized for the size and capabilities of small footprint platforms and mobile devices, but delivering broad linux software application compatibility
More information about Meego project at http://meego.com
Overview of How-To
This How-To is meant to be a starting point for people to learn install an Meego image for OMAP3-based IGEP platforms as quickly and easily as possible.
This How-To works with an Ubuntu 10.04 (Lucid Lynx) distribution but most of the contents are valid also for other GNU/Linux distributions. We do not issue any guarantee that this will work on other distributions.
Requirements
- A SD card at least 2GB ( recommended 4GB ) formatted with a dual-partion, a boot (fat) partition and a rootfs (ext3)
Feedback and Contributing
Creating articles in the wiki is a collaborative process, at any point, if you see a mistake you can contribute to this article.
Please, use the discussion tab for user comments. This is useful to separate page content and the discussion thereof and also, if you don't want to give normal users the right to edit the page but still want user contributed notes.
Editing permissions are restricted to registered users. Register in the main IGEP site and you will have single sign-on.
Consult the User's Guide for information on using the wiki software.
There is a set of Wiki contribution guidelines.
References
Much of this How-To is extracted from different sources. If you would like to read some of the original articles or resources, please visit them and thank the authors:
- http://wiki.meego.com/ARM/Meego_on_the_Beagle
- http://wiki.meego.com/ARM/Meego_on_Beagleboard_from_scratch
Prepare SGX/GLES libraries
First of all create a working directory
$ mkdir meego && cd meego
Therefore the SGX/GLES libraries are vital to get this running, download the script named create_sgx_package.sh
$ wget http://bazaar.launchpad.net/~beagleboard-kernel/%2Bjunk/2.6-stable/download/head%3A/create_sgx_package.s-20100530172846-c8x6fqv163ru20wz-1/create_sgx_package.sh $ chmod +x create_sgx_package.sh
Then run
$ ./create_sgx_package.sh
Putting a copy of a Meego root file system on SD card
When using ubuntu 10.04 you'll need to install qemu using the qemu-kvm-extras-static package.
$ sudo apt-get install qemu-kvm-extras-static
Let's start with building the rootfs, download and install pykickstart
$ git clone git://git.fedorahosted.org/git/pykickstart.git $ cd pykickstart $ make $ make install $ sudo fakeroot cp -fr usr/local/lib/python2.6/dist-packages/pykickstart /usr/bin/ $ sudo fakeroot cp -fr usr/local/lib/python2.6/dist-packages/pykickstart /usr/lib/python2.6/dist-packages/ $ sudo make -C po install $ cd ..
and, download and install the mic image creator
$ git clone git://gitorious.org/meego-developer-tools/image-creator.git $ cd image-creator $ make clean $ make $ sudo make install $ sudo ./tools/mic-check-alldeps $ cd ..
This tool is used to create MeeGo images, for that purpose you will need a Kickstart file. Kickstart files specify what repos to pull from, what packages to include, what post-scripts to run and what type of images to create.
$ wget http://wiki.meego.com/images/Handset-armv7l-beagle.ks $ mv Handset-armv7l-beagle.ks handset-armv7l-beagle.ks
and build the image with
$ sudo LANG=C mic-image-creator --run-mode=0 --cache=mycachedir --format=loop --arch=armv7l --release=daily --compress-disk-image=none --config=handset-armv7l-beagle.ks
Afterwards, the entire file system will be present as a file system image under
$./daily/handset/images/meego-handset-armv7l-beagle/meego-handset-armv7l-beagle-daily.img
The resulting image can be mounted via loopbak and the contents then rsync'ed to the card.
$ mkdir ./image $ sudo mount -o loop ./daily/handset/images/meego-handset-armv7l-beagle/meego-handset-armv7l-beagle-daily.img ./image $ sudo rsync -aHx --progress --delete ./image/* /media/rootfs
Install kernel and kernel modules
You can install the Codesourcery arm toolchain. Just download that package, unpack it somewhere and add the bin directory contained in this into your path environment variable and build the kernel.
Clone the kernel GIT repository from git.myigep.com and switch to latest development 2.6.33.y branch
$ git clone git://git.igep.es/pub/scm/linux-omap-2.6.git $ cd linux-omap-2.6 $ git checkout origin/linux-2.6.33.y linux-2.6.33.y
and build with
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- igep0020_defconfig $ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage modules
The result will be an uImage file in arch/arm/boot directory. You can install the kernel modules to your target rootfs
$ cp arch/arm/boot/uImage /media/boot $ sudo make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- modules_install INSTALL_MOD_PATH=/media/rootfs