Opened 11 years ago
Closed 10 years ago
#961 closed defect/bug (fixed)
Missing v-table symbol in qt_qpainter plugin
Reported by: | e8johan | Owned by: | KaZeR |
---|---|---|---|
Priority: | minor | Milestone: | want patch / contribution |
Component: | core | Version: | git master |
Severity: | Keywords: | qt_qpainter | |
Cc: |
Description
The qt_qpainter plugin complains about the _ZTV14EmbeddedWidget symbol. This can be avoided by removing the Q_OBJECT macro from the EmbeddedWidget? class. It is not needed as no up-casting is made to the class, and no other Qt specific features (such as signals, slots, properties, etc) are added.
The following patch solves the issue:
--- 8<---
Index: navit/graphics/qt_qpainter/RenderArea.h =================================================================== --- navit/graphics/qt_qpainter/RenderArea.h (revision 4845) +++ navit/graphics/qt_qpainter/RenderArea.h (working copy) @@ -21,7 +21,6 @@ #ifdef QT_QPAINTER_USE_EMBEDDING class EmbeddedWidget : public QX11EmbedWidget { - Q_OBJECT struct graphics_priv *gra; public:
--- 8< ---
Change History (2)
comment:1 Changed 11 years ago by pini
comment:2 Changed 10 years ago by sleske
- Resolution set to fixed
- Status changed from new to closed
The patch provided by the reporter was applied in rev.5235.
Note: See
TracTickets for help on using
tickets.
Hi,
In case you want to keep the Q_OBJECT macro, QT_QPAINTER_USE_EMBEDDING should be defined at moc time as well:
--- 8<---
--- 8<---
See also http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=658899