harald
KDE
Posted by harald
 in KDE
 on Sunday, February 26, 2006 @ 17:07

The more I play with scons/bksys, the more I like it. I just submitted the last few patches to get kdelibs/main compiling on my machine. My current challenge is to get the bootstrapped applications to use the freshly built libs instead of the already installed ones.

Bradley T. Hughes
Qt
KDE
 in Qt, KDE
 on Friday, February 24, 2006 @ 08:12

Note: This is my first blog posting ever, so please bear with me. ;)

There has been quite some talk recently at Trolltech about how well Qt “fits” together with other software components on the X11 desktop. We do a fairly good job of it already by providing the QAbstractEventDispatcher API in Qt 4. This has allowed people to plug Qt into the Glib main loop fairly easily, resulting in an application that can use any of the Qt, GTK+, KDE, and GNOME APIs. This is quite powerful, but has one significant drawback: if your application is designed to allow third-party extensions (i.e. plugins), you have to know in advance what kinds of integration to provide. Consider a Qt application tries to load multiple plugins, where each plugin uses GTK+. If the Qt application did not provide some sort of integration into the Glib main loop, what happens when each of the plugins tries to? I have the solution… :)

Read the rest of this entry »

lorn
Qt
Qtopia
KDE
Posted by lorn
 in Qt, Qtopia, KDE
 on Thursday, February 16, 2006 @ 19:54

nights are getting cooler here.. got down to a chilly 20C last night! whoa! better start getting out the sheet for the bed!

Its funny here, ‘officially’ autumn starts March 1st, and when I explain to people that no, autumn _really_ doesn’t start until the equinox (march 21), people tend to go on about how autumn actually starts (well _all_ seasons officially start on the first of the month) on the 1st. Silly Australians.. they probably need to get more in tune with natural forces of the moon and planets, man. It’s amazing how people can put arbitrary dates on something so tied to planetary movements such as seasons. weirdness. oh well.. must be all the sun and beer!

Finally got around to start reworking my own web site. heh.. dates on some files are from 1989 and last login was 4 years ago.. naaa.. no cobwebs around that server!

harald
Qt
KDE
Posted by harald
 in Qt, KDE
 on Friday, February 10, 2006 @ 10:45

Yesterday, I did an in-house distribution of a LSB compliant Qt binary. It worked on all the LSB 3.0 compliant systems we have here, and with some smaller “workarounds” (aka hacks), also on LSB 2.0 systems.

Building an LSB-complying Qt app is easy. Grab the lsb build environment from linuxbase.org (you need the latest lsb-build-*.rpm) and add /opt/lsb/bin to your PATH. To build an LSB app, you should use lsbcc instead of gcc. If you’re following the recent Qt snapshots, you might have noticed a new qmake spec called linux-lsb. Setting the environment variable QMAKESPEC to linux-lsb will tell qmake to compile with lsbcc instead of gcc.

After the environment is set up, all there is to do is a qmake && make. If the project links to non-LSB certified libraries, lsbcc will automatically link them statically to make sure that the resulting binary does not rely on libraries/symbols that might not exist on all distributions.

Deployment is a bit trickier. The lsb-desktop standard is not released yet, so we have to ship our own LSB-conforming Qt. This is easily done by building Qt itself with the linux-lsb makespec and with rpath support (since we don’t want to install it into /usr/lib).

Here are the commands I used to create the binary:

cd $QTDIR
./configure -platform linux-lsb -release -no-qt3support --prefix=/opt/myapp
make sub-src
sudo make install_qmake install_mkspecs
sudo make -C src install

cd /path/to/my/app
/opt/myapp/bin/qmake
make
sudo cp myapp /opt/myapp/bin

For the package, you need /opt/myapp/lib/libQt*.so.4, the /opt/myapp/plugins directory and /opt/myapp/bin/myapp. Since Qt was built using –prefix, it sets an rpath when linking your application, so you don’t need to worry about LD_LIBRARY_PATH when executing your application.

After everything is built successfully, we need to create an RPM package. The LSB book has a nice example how to do so. To install the RPM on Debian-based systems, you can use alien -i.

Unfortunately, Kubuntu doesn’t support LSB 3.0 yet, but with a small and evil hack, it’ll run our application (sudo ln -s /lib/ld-lsb.so.2 /lib/ld-lsb.so.3).

lorn
Qt
Qtopia
KDE
Posted by lorn
 in Qt, Qtopia, KDE
 on Wednesday, February 08, 2006 @ 04:08

I have been too busy working on Trolltech’s Qtopia 4 preview demonstration for the 3GSM show to say much lately. Not to mention too busy on the weekends with the overgrown lawn, the pool, the kid, the wife, etc… to do any hacking on Opie, Qtopia, or any of my Qt programs/projects.

I did manage to get one machine updated to kde 3.5.1. I _really_ think KDE needs more features for tablet pc’s!

Some of our embedded guys will be there in Barcelona with some exciting new stuff to demonstrate - Qtopia 2’s voip and the upcoming Qtopia built on Qtopia Core 4!
Qtopia 4 has some great enhancements, and I am particularly thrilled about one involving another open source project I have been loosely involved with since a few years.

Plus, there should be some demonstration device there as well, but I cannot say right now, you will find out soon enough.

If you are headed to 3GSM, be sure to stop by Trolltech’s booth!

Comments Off