Sunday, May 20, 2012

Setting up qt-components "devel environment"

I have been fighting myself a lot about how to start learning QML and contributing to QML/qt-components based application in Nemo Mobile. I tried to use qt-creator some time ago, but that didn't work out as I would have liked it to (read was not so simple that I would have though, as Nemo isn't official target). After discussing with some of the community developers decided to try out to just compile applications manually on my desktop env and then run apps on there and try what my modifications did and later package for the real environment. So here is what I finally did..

First I needed to install qt-development tools for the linux distribution I have currently installed, i.e., openSUSE 12.1. So I needed to install libqt4-devel package:
sudo zypper install libqt4-devel
Then it was time to get the qt-components, which can be found from gitorious. So get them from there and install:
git clone git://gitorious.org/qt-components/qt-components.git
cd qt-components
./configure -meego
make
sudo make install
cd ..
Then it was time to get themes working for the qt-components. For this I installed first the base theme called meegotouch-theme:
git clone git://gitorious.org/meegotouch/meegotouch-theme.git
cd meegotouch-theme
qmake
sudo make install
cd ..
And then I installed the actual theme. For this I used the default theme that is provided also in Nemo Mobile called meego-handset-theme-darko:
git clone https://github.com/jpavelek/meego-handset-theme-darko.git
cd meego-handset-theme-darko
sudo mkdir /usr/share/themes/darko
sudo cp -r meegotouch/ index.theme /usr/share/themes/darko/
sudo cp -r blanco/ /usr/share/themes/
# Blanco has links to meegotouch which we add from darko theme
sudo ln -s darko/meegotouch /usr/share/themes/meegotouch
cd ..

And finally I took one of the qt-components/qml based applications that is in Nemo to try out my configuration
git clone https://github.com/nemomobile/qmlfilemuncher.git
cd qmlfilemuncher
qmake
make
./qmlfilemuncher
After this I had the QML/qt-components application running without any problems. So time to start learning more QML, fixing bugs and implementing features. :) Of course this doesn't include yet all the libraries and API's use in Nemo Mobile, but it is a start.

No comments:

Post a Comment