I'm using Qt Creator 2.0.1 with Qt 4.7.0 (32 bit) on Windows 7 Ultimate 32 bit.
Consider the following code, which is a minimum to produce the error:
class T : public QObject, public QGraphicsItem
{
    Q_OBJECT
public:
    T() {}
    QRectF      boundingRect() const {return QRectF();}
    void        paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
                      QWidget *widget) {}
};
int main()
{
    T t;
    return 0;
}
The above code fragment causes the following linker errors:
In function `T':
undefined reference to `vtable for T'
undefined reference to `vtable for T'
In function `~T':
undefined reference to `vtable for T'
undefined reference to `vtable for T'
If I comment out the line that contains Q_OBJECT, it compiles fine. I need signal and slots with QGraphicsItem so I need Q_OBJECT.
What is wrong with the code? Thanks.