Maemo 5 PR 1.2 is out with Qt 4.6.2 installed, so developers now can create applications with Qt 4.6 using either the official scratchbox based SDK or MADDE (remember, “MADDE is currently a technology preview.”)
BUT… there are people who prefer “Livin’ on the Edge“. If you are one of those and already want/need to develop with Qt 4.7 (not released yet!) for Maemo 5, using MADDE to build your applications / packages, here is an update to the procedure first published by the troll Harald Fernengel (AKA harryF). Although the title says “on MacOS X”, the steps also work on Linux.
If you are not using a Debian based distro, you need to install the “Tools for Debian Packages” package of your distribution (e.g. “deb” on openSUSE, sys-apps/debianutils on Gentoo).
Download the script fetch-qt4.7.0~git20100520-0maemo1.sh fetch-qt4.7.0~git20100614-0maemo1.sh . This script downloads the libqt4-experimental packages from repository.maemo.org and installs then in your MADDE – Before you run the script, remember to adjust the MADDE_PATH variable according to the path you installed MADDE.
Download qt4-maemo5-qt4.7.0~git20100520-0maemo1.tar.gz qt4-maemo5-qt4.7.0~git20100614-0maemo1.tar.gz. It contains the Qt tools compiled for the correspondent version, configured for cross compiling. Extract to /opt/qt4-maemo5.
Check if mad is in your PATH.
To build an application using your fresh environment, run /opt/qt4-maemo5/bin/qmake && make .
If you succeeded in the setup process, this should result in a armel binary ready to run on N900. To generate a deb package, you can use the tools offered by MADDE to build a skeleton of debian package and so on.
To run your application on N900, install libqt4-experimental-* packages. If QtQuick (QML) is part of your plans, qmlviewer is in the package qt4-experimental-declarative-qmlviewer .
In the first season, the focus was S60 devices. After the holidays, the new season is about Maemo. =)
Qt Mobile Demos are in Maemo 5 extras-devel, so now it’s easier to check them in a N900 near you. First, you need to enable the extras-devel repository/catalogue and the demos should appear if you search for “qtmobile”.
The packages are:
hyperui -> qtmobiledemo-hyperui
mybudget -> qtmobiledemo-mybudget
shoplist -> qtmobiledemo-shoplist
weather -> qtmobiledemo-weather
Future? Well, soon QAbstractKineticScroller will replace our kinetic list implementation. (Read the comments).
And yes, we have a list of known issues to solve in our free time…
To celebrate the new version of Qt, the first with the S60 port, we thought it would be nice if people could also check those demos on desktop platforms. You know, Qt is everywhere =)
As the release was yesterday, probably there are people without Qt 4.6 installed in their desktops yet… so we prepared binaries with Qt 4.6.0 statically linked =)
Mac version (Unfortunately I don’t have a Mac available here right now. Contributions are welcome =)
It’s worth a mention. The source code for all platforms is basically the same, the only difference are due to different screen sizes, different connections methods. This code is still available in the same place: http://gitorious.org/qt-labs/mobile-demos
About 3900 people are already registered for the event and personally I expect a great opportunity to meet people, some of them I only know from IRC or mailing lists, maybe new partners for Qt Labs Americas in other countries of Latin America =) and also a chance to learn new things.
Learn and teach a little! =) If you take a look in the conference’s program you will see that some colleages are going to speak there. Artur de Souza (MoRpHeuz) will present an updated version of his talk about Plasma Netbook (including a cool demonstration =). In Caio Marcelo‘s and Eduardo Fleury’s talk, the attendants will see what are the new possibilities in graphical interfaces development with Qt (and for KDE). Another openBossa speaker is Kenneth Christiansen with a presentation about QtWebkit.
People interested in learn how to develop with Qt and KDE will have a great opportunity because there are 2 courses by the guys of Live Blue. In the last day (Saturday October,24th) Jesus Sanchez-Palencia and me are going to head a course on the new Qt 4.6 APIs .
Besides the mentioned ones, Ana Cecília (annieC) will talk about an usability study on FOSS.
So, if you are going to Foz do Iguaçú, see you there! =) And if you won’t go, stay tuned for the news.
Published at: 06:10 pm - Wednesday October 14 2009
You may have noticed that Qt is being ported to S60, and as you can read here, daily builds are available as technology preview since the end of September. At first, there are only MS Windows installers, but Lizardo did a great job collecting and writing patches and instructions to make it possible to develop with Qt for S60 on Linux.
To ease this process, I wrote a small script that does almost the same described in Lizardo’s post, with some new pseudo features. It needs some improvements, the known ones are marked with #XXX – contributions are welcome!
It consists in 2 files, the script and a config file where the user can customize the directories where things will be installed, the directory of the downloaded files, the version of S60 that will be used. Initially it’s ready for S60 3rd edition FP2 and S60 5th edition (Check here the version of your target device), etc.
Running the script, the first step shows the URLs to files you have to download, but need login or other kind of interaction with the website. The script is a nice guy, when it’s possible “he” asks if you allow him to open those URLs in your default browser =)
The script then downloads other files that are direct accessible and the installation begins. If everything goes right, in the end your environment will be ready for Qt-S60 development.
Welcome back dear readers. This is my second post of the day talking about what is happening in the development of animated layouts in Qt Kinetic.
As I said in my previous post, we discussed about new good examples that could show use cases of this new API. In the end, only one example was created, but it’s really cool =) .
Maybe some of you will recognize this interface, it looks like canola2‘s main menu, another software developed by INdT for Nokia internet tablets (e.g. N810) -- and as you can read here, an old bug was fixed and canola2 is now a free software, released under GPLv3. In this post you can read more about the development of that interface.
So, we wrote an example based on that concept. During the development we had nice discussions regarding the algorithm for the engine that controls the icons distribution on the screen.
Check it out:
http://www.youtube.com/watch?v=eJcTBJaPRZg
The source code is not available yet, but it will be published soon in a git repository near you, then you will be able to check how animated layouts were used and also see that algorithm I’ve just mentined. So, stay tuned!
A quick introduction: in the end of February I posted a video showing the first example of layouts animations. At that time, the API wasn’t complete and there was no integration with states and some stuff were hardcoded.
In March some Trolls visited Recife to speak at Bossa Conference 2009 (you can watch the presentations on http://openbossa.blip.tv). It was nice because we could talk about the work we’re doing together using whiteboards, what makes a huge difference =) .
After Bossa, we continued the development of the Animated Layouts API, making layout proxies transparent and integrating with the Qt State Machine Framework. It now allows the customization of animations per widget, bringing more flexibility in the creation of rich user interfaces using Qt.
The following video shows the old example with these improvements:
link: http://www.youtube.com/watch?v=wZo1wskBs0A
After that, we created some examples in order to show use cases and also to test what had been developed, but it is the next post’s subject! (remember what I said in the beginning? )
Published at: 05:02 pm - Thursday February 26 2009
My first post about stuff I’m working on
We are working together with Qt Software guys in the Qt Kinetic project, specifically with animated layout transitions.
Last week we made our first demo of what is being developed. It uses the basics we’ve just finished, now we’re working to define the final API. The following video shows this demo:
video link: http://www.youtube.com/watch?v=M3HbmrNvQl4