[Qt5-feedback] Building Qt as LSB-compliant

Thiago Macieira thiago at kde.org
Tue Jun 7 08:37:06 CEST 2011


Em Tuesday, 7 de June de 2011, às 11:12:22, Craig.Scott at csiro.au escreveu:
> The situation with QtDBus is a bit special. For one, this module is only
> available on linux and not Mac or Windows. This means that it is not in the
> same category as the likes of QtGui or QtNetwork which are fully
> cross-platform. The QtDBus module is a linux-specific thing (currently).
> Even under linux though, the stability of the DBus API has been a concern
> in the past. See here for past comments on the LSB side of things (now
> getting a bit dated):

QtDBus is not Linux-specific. It's perfectly well available on Mac and it's 
even built in the official Mac binaries we ship. It's also known to work on 
Windows.

> http://www.linuxfoundation.org/en/LSB_DBus
> 
> Note, however, that even the latest LSB release still doesn't include any
> DBus libraries! As things stand, you can't offer DBus functionality in a
> LSB-compliant package, since DBus isn't in the LSB and therefore you can't
> even build Qt with DBus support using LSB compilers. I guess you could try
> building DBus itself with LSB compilers, but that just seems like the
> rabbit warren is going too deep - and DBus is really something that should
> be in the LSB, but currently isn't. 

Then you can build QtDBus but not link to libdbus-1. That trick was created in 
Qt 4.4 so that Mac binaries would compile and install on the user's machine, 
even if the user didn't have libdbus-1.

That way, you can create an LSB-compliant libQtDBus.so.4 because it won't link 
to anything but the Qt libraries themselves.

> It would seem worthwhile for Qt and LSB people to have discussions about
> what could be done to include DBus in the LSB, to then also enable the
> QtDBus module to be added to the LSB and also to allow the QtDBus module to
> be built with the LSB compilers. How could we go about doing this? Note
> that LSB people are currently discussing what should go into the LSB 5.0
> spec, so it might be the right time to have these discussions, given that
> there is also a parallel discussion around Qt5 binary issues on this list.

Note what I said before: do not ship your own Qt binaries on Linux. If you 
really want to do that, I recommend either static linking or the 
renaming+namespace trick. Or you'll have to ship all libraries, including 
QtDBus, even if you don't use them.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
  Senior Product Manager - Nokia, Qt Development Frameworks
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
Url : http://lists.qt.nokia.com/pipermail/qt5-feedback/attachments/20110607/f359f659/attachment.bin 


More information about the Qt5-feedback mailing list