RE: libGQt.so: undefined reference to `QWidget::repaint(bo ol)'

From: Faine, Valeri <fine_at_bnl.gov>
Date: Tue, 10 May 2005 11:43:49 -0400


>
> Hi,
> On a SLC3/i386 with ROOT v4.04.02, while linking an application, I get:
> /.../lib/libGQt.so: undefined reference to `QWidget::repaint(bool)'
> which does NOT happen when the ROOT v4.03.04 is used.
> In both cases, binary releases from the ROOT www page are used.
> Does anyone know any "magic fix" for this problem?

Ymm. That is strange. Qt layer has only one place where this method is called:
Are you sure, you have no problem with LD_LIBRARY_PATH or something like this.

grep repaint qt/src/*.cxx
qt/src/TGQt.cxx: ((TQtWidget *)fSelectedWindow)->repaint();

We have no any call to "repaint(bool)"

QWidget class
http://doc.trolltech.com/3.3/qwidget.html

has "many" repaint.

void repaint () 
void repaint ( bool erase ) 
void repaint ( int x, int y, int w, int h, bool erase = TRUE ) 
void repaint ( const QRect & r, bool erase = TRUE ) 
void repaint ( const QRegion & reg, bool erase = TRUE )

Including one with "repaint ( bool erase )" Even though the Qt layer of ROOT does not use this method, it has to be present in your Qt library anyway.

What is your Qt version?
I've tested the method repaint is present in all Qt since 3.0 at least

http://doc.trolltech.com/3.0/qwidget.html

Valeri

> Thanks in advance,
> Best regards,
> Jacek.
Received on Tue May 10 2005 - 17:44:07 MEST

This archive was generated by hypermail 2.2.0 : Tue Jan 02 2007 - 14:45:07 MET