m |
(→Steps) |
||
| (5 intermediate revisions not shown) | |||
| Line 15: | Line 15: | ||
Step 1. Get the latest source of the meego-ux-components | Step 1. Get the latest source of the meego-ux-components | ||
| + | <pre> | ||
cd ~/meego.gitorious | cd ~/meego.gitorious | ||
| - | git clone http://git.gitorious.org/meego-ux/meego- | + | git clone http://git.gitorious.org/meego-ux/meego-ux-components.git |
| + | </pre> | ||
Step 2. Download the 4/1 version of the QEMU image: | Step 2. Download the 4/1 version of the QEMU image: | ||
| + | <pre> | ||
http://download.meego.com/trunk-daily/builds/1.1.90/1.1.99.1.20110401.1/images/meego-tablet-ia32-qemu/ | http://download.meego.com/trunk-daily/builds/1.1.90/1.1.99.1.20110401.1/images/meego-tablet-ia32-qemu/ | ||
| + | </pre> | ||
Step 3. Un-tar to get the .raw image | Step 3. Un-tar to get the .raw image | ||
Step 4. Make a fs copy of the image: | Step 4. Make a fs copy of the image: | ||
| + | <pre> | ||
sudo mic-chroot -s ./chroot0405 -v | sudo mic-chroot -s ./chroot0405 -v | ||
Downloads/meego-tablet-ia32-qemu-1.1.99.1.20110405.3.img | Downloads/meego-tablet-ia32-qemu-1.1.99.1.20110405.3.img | ||
<exit the chroot> | <exit the chroot> | ||
| + | </pre> | ||
Step 5. mount --bind your source directory to a directory in the fs chroot | Step 5. mount --bind your source directory to a directory in the fs chroot | ||
| - | sudo mount -B | + | <pre> |
| - | meego-ux-components | + | # once, after creating the chroot0405 directory |
| + | sudo mkdir chroot0405/home/meego-ux-components | ||
| + | |||
| + | #repeat after each reboot, or add to system .profile | ||
| + | sudo mount -B ~/meego.gitorious/meego-ux-components ~/chroot0405/home/meego-ux-components | ||
| + | |||
| + | </pre> | ||
Step 5. start the chroot | Step 5. start the chroot | ||
| + | <pre> | ||
sudo mic-chroot ./chroot0401 | sudo mic-chroot ./chroot0401 | ||
| + | </pre> | ||
Step 6. Before building the sources, you need to git checkout a version | Step 6. Before building the sources, you need to git checkout a version | ||
that will work with the 4/1 tablet image: | that will work with the 4/1 tablet image: | ||
| + | <pre> | ||
git checkout 0.2.1 | git checkout 0.2.1 | ||
| + | </pre> | ||
Step 7. startmeego to get all the MeeGO services started: | Step 7. startmeego to get all the MeeGO services started: | ||
| + | <pre> | ||
| + | # You may have to allow connections to your X server | ||
| + | # you can test this by running xclock in the chroot | ||
| + | xhost + | ||
| + | |||
startmeego & | startmeego & | ||
## Note - it will be helpful to edit the script | ## Note - it will be helpful to edit the script | ||
| Line 45: | Line 66: | ||
## Change: Xephyr $DISP -screen 1024x600 | ## Change: Xephyr $DISP -screen 1024x600 | ||
## To: Xephyr $DISP -screen 1280x800 | ## To: Xephyr $DISP -screen 1280x800 | ||
| + | </pre> | ||
Step 8. Start Qt Creator (in the mic-chroot terminal) | Step 8. Start Qt Creator (in the mic-chroot terminal) | ||
| + | <pre> | ||
qtcreator & | qtcreator & | ||
| + | </pre> | ||
Step 9: Install packages needed to build meego-ux-components | Step 9: Install packages needed to build meego-ux-components | ||
| + | <pre> | ||
zypper in libXdamage-devel | zypper in libXdamage-devel | ||
zypper in libXcomposite-devel | zypper in libXcomposite-devel | ||
| Line 60: | Line 85: | ||
zypper in mlite | zypper in mlite | ||
zypper in libexif-devel | zypper in libexif-devel | ||
| + | </pre> | ||
| - | + | Step 10. Build and Install | |
| + | <pre> | ||
| + | # In Qt Creator: Build->Build All | ||
| + | |||
| + | # from the chroot terminal (Until install / deploy step in Qt Creator is tested) | ||
cd ../meego-ux-components-build-desktop #If shadow build was checked | cd ../meego-ux-components-build-desktop #If shadow build was checked | ||
make install | make install | ||
| + | </pre> | ||
| - | + | Step 11. Run meego-ux-widgetgallery in a separate window | |
| + | <pre> | ||
qmlviewer /usr/share/meego-ux-widgetgallery/main.qml | qmlviewer /usr/share/meego-ux-widgetgallery/main.qml | ||
| + | </pre> | ||
| - | + | Step 12. Run meego-ux-widgetgallery in the Xephyr startmeego window | |
| + | <pre> | ||
export DISPLAY=:2 | export DISPLAY=:2 | ||
qmlviewer /usr/share/meego-ux-widgetgallery/main.qml | qmlviewer /usr/share/meego-ux-widgetgallery/main.qml | ||
| - | + | Step 13. Run meego-ux-widgetgallery directly from the MeeGo environment | |
# in the Xephyr Window, hit the Home (Windows) key | # in the Xephyr Window, hit the Home (Windows) key | ||
# Choose the App Viewer | # Choose the App Viewer | ||
| Line 78: | Line 112: | ||
# run this command in the terminal window: | # run this command in the terminal window: | ||
qmlviewer /usr/share/meego-ux-widgetgallery/main.qml | qmlviewer /usr/share/meego-ux-widgetgallery/main.qml | ||
| + | </pre> | ||
| - | + | Step 14. You can also copy an existing .desktop file and change the exec | |
statement to meego-ux-widgetgallery if you want to click on an icon to | statement to meego-ux-widgetgallery if you want to click on an icon to | ||
start it. | start it. | ||
| + | |||
| + | == Todo == | ||
| + | * Automate the creation / startup of the chroot - in the the above steps, design a script which can perform steps 2 - 5, 7, 9, 14 | ||
| + | * Also document how to set up the SDK to run this application on a device. | ||
| + | |||
| + | [[Category:Tutorial]] | ||
Contents |
This tutorial will take the developer through the process of building from source the meego-ux-components package in a chroot development environment on Linux.
This tutorial is based on the MeeGo SDK 1.2 Preview (with Tablet) release.
This tutorial was created with a specific Tablet Build (04-01-2011) and has specific instructions related to that build. Specifically, a git checkout of a tag is required.
Step 1. Get the latest source of the meego-ux-components
cd ~/meego.gitorious git clone http://git.gitorious.org/meego-ux/meego-ux-components.git
Step 2. Download the 4/1 version of the QEMU image:
http://download.meego.com/trunk-daily/builds/1.1.90/1.1.99.1.20110401.1/images/meego-tablet-ia32-qemu/
Step 3. Un-tar to get the .raw image
Step 4. Make a fs copy of the image:
sudo mic-chroot -s ./chroot0405 -v Downloads/meego-tablet-ia32-qemu-1.1.99.1.20110405.3.img <exit the chroot>
Step 5. mount --bind your source directory to a directory in the fs chroot
# once, after creating the chroot0405 directory sudo mkdir chroot0405/home/meego-ux-components #repeat after each reboot, or add to system .profile sudo mount -B ~/meego.gitorious/meego-ux-components ~/chroot0405/home/meego-ux-components
Step 5. start the chroot
sudo mic-chroot ./chroot0401
Step 6. Before building the sources, you need to git checkout a version that will work with the 4/1 tablet image:
git checkout 0.2.1
Step 7. startmeego to get all the MeeGO services started:
# You may have to allow connections to your X server # you can test this by running xclock in the chroot xhost + startmeego & ## Note - it will be helpful to edit the script /usr/bin/startmeego-debug-tablet ## Change: Xephyr $DISP -screen 1024x600 ## To: Xephyr $DISP -screen 1280x800
Step 8. Start Qt Creator (in the mic-chroot terminal)
qtcreator &
Step 9: Install packages needed to build meego-ux-components
zypper in libXdamage-devel zypper in libXcomposite-devel zypper in libX11-devel zypper in kcalcore-devel zypper in qt-mobility-devel zypper in libqtopengl-devel zypper in libcontentaction-devel zypper in contextkit-devel zypper in mlite zypper in libexif-devel
Step 10. Build and Install
# In Qt Creator: Build->Build All # from the chroot terminal (Until install / deploy step in Qt Creator is tested) cd ../meego-ux-components-build-desktop #If shadow build was checked make install
Step 11. Run meego-ux-widgetgallery in a separate window
qmlviewer /usr/share/meego-ux-widgetgallery/main.qml
Step 12. Run meego-ux-widgetgallery in the Xephyr startmeego window
export DISPLAY=:2 qmlviewer /usr/share/meego-ux-widgetgallery/main.qml Step 13. Run meego-ux-widgetgallery directly from the MeeGo environment # in the Xephyr Window, hit the Home (Windows) key # Choose the App Viewer # Click on Terminal # run this command in the terminal window: qmlviewer /usr/share/meego-ux-widgetgallery/main.qml
Step 14. You can also copy an existing .desktop file and change the exec statement to meego-ux-widgetgallery if you want to click on an icon to start it.