[Interest] Apologies on the "bloat" thread (a.k.a yes Windows is still important)

Thiago Macieira thiago.macieira at intel.com
Thu Apr 11 05:36:32 CEST 2013


On quarta-feira, 10 de abril de 2013 21.54.29, Michael Jackson wrote:
> So we have to move include files around during the build because command
> line lengths are too long? I have never understood why the header for
> QString isn't QString.h. Why is it qstring.h?

The header is qstring.h because it has always been qstring.h. That works in Qt 
1, 2, 3, 4 and 5, provided you have the right -I flags.

The novelty came from Qt 4, because you can include the class name without 
caring for which header it comes from. QString is not a good example, so I ask 
you: what header provides these?

	QMetaMethod
	QProcessEnvironment
	QGraphicsObject
	QGraphicsPixmapItem
	QEvent

Another thing came from Mac support: frameworks. Because in Qt 4 the one big 
Qt library was split into multiple libraries and each one is a framework, you 
need a two-level include to make it work with simple buildsystems:

	#include <QtCore/qstring.h>
not
	#include <qstring.h>

The latter only works if you add an -I to the Headers directory inside the 
QtCore.framework bundle. (Granted, recently the Mac OS X framework development 
philosophy changed, so headers-inside-frameworks is no longer recommended)

We don't want to manually maintain those headers. They change a lot during 
development. And we might accidentally forget an update before a release, only 
to see it reported as a bug with an angry "You don't do QA!" comment. So we 
wrote a simple script to do it for us.

-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20130410/757aacd2/attachment.sig>


More information about the Interest mailing list