#This guide is for Ubuntu 10.04 & 10.10; For other versions, please refer to the reference below.
#Reference: http://wiki.meego.com/Image_Creation
meego repo
http://repo.meego.com/MeeGo/builds/1.2.0.90/1.2.0.90.3.20110607.2/repos/oss/ia32/packages/i586/
#1. Environment creation:
1.1: sudo apt-get install yum rpm kpartx parted syslinux isomd5sum kvm zlib1g-dev squashfs-tools python2.6-dev qemu-arm-static python-urlgrabber
1.2: add the below line to /etc/apt/sources.list
For Ubuntu 10.04, add the below line to /etc/apt/sources.list
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /
For Ubuntu 10.10, add the below line to /etc/apt/sources.list
deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.10/ /
1.3: Execute:
sudo apt-get update
[Should see some error "GPG error"]
1.4: add the repository public key using the following command:
ssh-keygen -t rsa ;(If neccesary)
gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A
gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -
1.5: Again execute:
sudo apt-get update
1.6: Meego Image Creator (MIC2) Installation
sudo apt-get install mic2
#Building a MeeGo chroot on Linux
#Reference: http://wiki.meego.com/SDK/Docs/1.2/Building_a_MeeGo_chroot_on_Linux
#1. Prepare chroot image:
1.1 Unpack the image using MIC2
sudo mic-chroot --unpack-only -s ~/meego-chroot <image file>.img
#2. Chroot into the image using mic-chroot:
sudo mic-chroot ~/meego-chroot
#3. Environment creation (into chroot):
3.1: #sudo zypper in yum rpm kpartx parted syslinux isomd5sum kvm zlib1g-dev squashfs-tools python2.6-dev qemu-arm-static python-urlgrabber osc build
3.2: Install Perl from MeeGo repo:
#rpm -ivh --nodeps --force ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/oss/ia32/packages/i586/perl-*.rpm
#rpm -ivh --nodeps --force ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/oss/ia32/packages/noarch/perl-*.rpm
#rpm -ivh --nodeps ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/oss/ia32/packages/i586/rpm-*.rpm
#rpm -ivh --nodeps ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/oss/ia32/packages/noarch/rpm-*.rpm
3.3: Add URL to yup repos:
#cat <<REPO > /etc/yum.repos.d/meego-tools.repo
[meego-tools]
name=MeeGo Tools for Fedora
baseurl=http://repo.meego.com/MeeGo/tools/repos/fedora/12
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego
REPO
3.3.1
ssh-keygen -t rsa
3.4: add the repository public key using the following command (before create SSH key):
#gpg2 --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A
#gpg2 --export --armor 0BC7BEC479FC1F8A > /etc/pki/rpm-gpg/RPM-GPG-KEY-meego
3.5: Meego Image Creator (MIC2) Installation
#yum install mic2
if you get asked to import the key do so:
warning: rpmts_HdrFromFdno: Header V3 DSA/SHA1 Signature, key ID 79fc1f8a: NOKEY
meego-fedora/gpgkey | 3.3 kB 00:00 ...
Importing GPG key 0x79FC1F8A:
Userid: "Moblin Build (Moblin Build User) <build@moblin.org>"
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-meego
Is this ok [y/N]: y
3.6: Meego Image Creator (MIC2) Update
#yum update mic2
3.7: Install MeeGo 1.2 config:
Download \\runnfs003\LGE_Car\CM\Config\meego-1.2.conf to /usr/lib/build/configs
#sudo ln -s -f /usr/lib/build/configs/meego-1.2.conf /usr/lib/build/configs/default.conf
3.8: Exit from chroot:
#exit
#4. Build chroot rpm:
4.1: Chroot into the image using mic-chroot:
sudo mic-chroot ~/meego-chroot
4.2: Create directories for rpmbuild:
#cd ~
#mkdir rpmbuild
#cd rpmbuild
#mkdir SOURCES
#mkdir SPECS
4.3: Unpack your SRPM (for exapmle kernel):
#cd ~/rpmbuild/SOURCES
#cp /root/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/oss/source/kernel-adaptation-intel-automotive-2.6.37.6-10.8.src.rpm ~/rpmbuild/SOURCES/
#rpm2cpio kernel-adaptation-intel-automotive-2.6.37.6-10.8.src.rpm | cpio -i
4.4: Move spec file from ~/rpmbuild/SOURCES to ~/rpmbuild/SPECS
#mv kernel-adaptation-intel-automotive.spec ../SPECS/
4.5: Change Source and/or spec files.
4.6: Create SRMP:
#cd ~/rpmbuild
#rpmbuild -bs ~/rpmbuild/SPECS/kernel-adaptation-intel-automotive.spec
Yuor SRMP into ~/rpmbuild/SRPMS/
4.7: Build yor SRMP:
#cd ~/rpmbuild/SRPMS
FALSE: #sudo build --repository ~/Downloads/MeeGo_1.2.0.90.3.20110607/MeeGo/snapshots/stable/1.2.0.90/1.20.90.3.20110607.2/repos/oss/ia32/packages --arch i686 kernel-adaptation-intel-automotive-2.6.37.6-10.8.src.rpm
CORCT: #sudo build --repository ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/oss/ia32/packages/ --arch i686 kernel-adaptation-intel-automotive-2.6.37.6-10.8.src.rpm
Your RPM into /var/tmp/build-root/home/abuild/rpmbuild/RPMS/i586/
or make -s CONFIG_DEBUG_SECTION_MISMATCH=y ARCH=x86 -j4 bzImage
4.8: Exit from chroot:
#exit
#5. Replace packages to meego repo:
5.1: Copy your packages to meego repo, for example to ~/Downloads/MeeGo_1.2.0.90.3.20110607/MeeGo/snapshots/stable/1.2.0.90/1.20.90.3.20110607.2/repos/oss/ia32/packages/
5.2: Recreate repo:
sudo createrepo --update -g repodata/group.xml ~/Downloads/MeeGo_1.2.0.90.3.20110607/MeeGo/snapshots/stable/1.2.0.90/1.20.90.3.20110607.2/repos/oss/ia32/packages
#6. Add new packjages to meego repo:
6.1: Create yuor directory:
mkdir my_packages
6.2: Copy your packages to this directory
6.3: Create repo (or if your repo is present then add --update option):
createrepo my_packages
6.4: Add your repo to .ks file (for example meego-ivi-ia32-1.2.0.90.3.20110607.2.ks):
repo --name=my-repos --baseurl=file:///home/your_name/my_packages/ --save --debuginfo --source
6.5: Add instalation line in section %packages to .ks file:
my_package_name
#7. Create LiveCD image:
7.1: Prepare workspace for build:
sudo mic-create-bootstrap -n trunk -k /home/your_name/repocache -r file:///home/your_name/Download/MeeGo_1.2.0.90.3.20110607/MeeGo/snapshots/stable/1.2.0.90/1.20.90.3.20110607.2/repos/oss/ia32/packages/ -o /home/your_name/MeegoBuild/build
7.2: Create LiveCD image:
sudo mic-image-creator --bootstrap=/home/your_name/MeegoBuild/build/ --format=livecd --arch=i686 --config=meego-ivi-ia32-1.2.0.90.3.20110607.2.ks --cache=/home/your_name/MeegoBuild/repocache/ --run-mode=1
#8. GIT:
8.1: Close git-repo, for example kernel:
git clone ssh://your_id@denuls031.global.ad.teleca.com:29418/linux-2.6.37
8.2: Checkout your branch:
git checkout -b /devs/TRU/your_id_kernel_20110630 LGECAR0001_01.01R
8.3: Create archiv from your source:
git archive -o ./linux-2.6.37.tar --prefix=linux-2.6.37/ HEAD
gzip -c linux-2.6.37.tar > linux-2.6.37.tar.gz
or
tar cf - linux-2.6.37 --exclude .git | gzip -c > linux-2.6.37.tar.gz
how to install X11 dev package
rpm -ivh ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/oss/ia32/packages/i586/xcb-proto-1.6-4.10.i586.rpm
To link with GLESv2 lib for pvr HW
rpm -ivh --nodeps --force ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/non-oss/ia32/packages/i586/pvr-bin-5.3.0.0039-1.1.i586.rpm
rpm -ivh --nodeps --force ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/non-oss/ia32/packages/i586/pvr-bin-devel-5.3.0.0039-1.1.i586.rpm
If faad plug in is necessary, then please install following
wget http://ftp.yandex.ru/mirrors/meego-community/meego1.2/i586/gst-plugins-bad-0.10.20-2.1.i586.rpm
wget http://ftp.yandex.ru/mirrors/meego-community/meego1.2/i586/faad2-libs-2.7-1.1.i586.rpm
rpm -ivh faad2-libs-2.7-1.1.i586.rpm
rpm -ivh --nodeps --force gst-plugins-bad-0.10.20-2.1.i586.rpm
export GST_DEBUG_DUMP_DOT_DIR=/tmp
Start playing
gst-launch playbin uri=file:///home/thijs/Desktop/mewmew-vorbis-ssa.mkv
or
gst-launch-0.10 filesrc location=I\ Am\ Legend\ -\ Trailer.mp4 ! qtdemux ! MixVideoDecoderH264 ! vaimagesink
After play stopped
dot -Tsvg -o pipeline.svg 0:00:02.270914892-gst-launch.error.dot
how to install X11 dev package
rpm -ivh ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/oss/ia32/packages/i586/xcb-proto-1.6-4.10.i586.rpm
To link with GLESv2 lib for pvr HW
rpm -ivh --nodeps --force ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/non-oss/ia32/packages/i586/pvr-bin-5.3.0.0039-1.1.i586.rpm
rpm -ivh --nodeps --force ~/Downloads/MeeGo/snapshots/stable/1.2.0.90/1.2.0.90.3.20110607.2/repos/non-oss/ia32/packages/i586/pvr-bin-devel-5.3.0.0039-1.1.i586.rpm
If faad plug in is necessary, then please install following
wget http://ftp.yandex.ru/mirrors/meego-community/meego1.2/i586/gst-plugins-bad-0.10.20-2.1.i586.rpm
wget http://ftp.yandex.ru/mirrors/meego-community/meego1.2/i586/faad2-libs-2.7-1.1.i586.rpm
rpm -ivh faad2-libs-2.7-1.1.i586.rpm
rpm -ivh --nodeps --force gst-plugins-bad-0.10.20-2.1.i586.rpm
export GST_DEBUG_DUMP_DOT_DIR=/tmp
Start playing
gst-launch playbin uri=file:///home/thijs/Desktop/mewmew-vorbis-ssa.mkv
or
gst-launch-0.10 filesrc location=I\ Am\ Legend\ -\ Trailer.mp4 ! qtdemux ! MixVideoDecoderH264 ! vaimagesink
After play stopped
dot -Tsvg -o pipeline.svg 0:00:02.270914892-gst-launch.error.dot