emartisoft/IDE65XX

After QT updates compile fails on ArchLinux

Closed this issue · 1 comments

After QT updates compile fails on ArchLinux

commodorestyle.cpp: In member function 'virtual void CommodoreStyle::drawPrimitive(QStyle::PrimitiveElement, const QStyleOption*, QPainter*, const QWidget*) const':
commodorestyle.cpp:78:26: error: variable 'QPainterPath roundRect' has initializer but incomplete type
   78 |             QPainterPath roundRect = roundRectPath(option->rect);
      |                          ^~~~~~~~~
commodorestyle.cpp:78:64: error: invalid use of incomplete type 'class QPainterPath'
   78 |             QPainterPath roundRect = roundRectPath(option->rect);
      |                                                                ^
In file included from /usr/include/qt/QtGui/qtransform.h:43,
                 from /usr/include/qt/QtGui/qimage.h:48,
                 from /usr/include/qt/QtGui/qpixmap.h:49,
                 from /usr/include/qt/QtGui/qicon.h:46,
                 from /usr/include/qt/QtWidgets/qstyle.h:47,
                 from /usr/include/qt/QtWidgets/qcommonstyle.h:44,
                 from /usr/include/qt/QtWidgets/QCommonStyle:1,
                 from /usr/include/qt/QtWidgets/qproxystyle.h:44,
                 from /usr/include/qt/QtWidgets/QProxyStyle:1,
                 from commodorestyle.h:4,
                 from commodorestyle.cpp:1:
/usr/include/qt/QtGui/qmatrix.h:54:7: note: forward declaration of 'class QPainterPath'
   54 | class QPainterPath;
      |       ^~~~~~~~~~~~
commodorestyle.cpp: At global scope:
commodorestyle.cpp:194:61: error: return type 'class QPainterPath' is incomplete
  194 | QPainterPath CommodoreStyle::roundRectPath(const QRect &rect)
      |                                                             ^
commodorestyle.cpp: In static member function 'static void CommodoreStyle::roundRectPath(const QRect&)':
commodorestyle.cpp:199:18: error: aggregate 'QPainterPath path' has incomplete type and cannot be defined
  199 |     QPainterPath path;
      |                  ^~~~
make[1]: *** [Makefile:1216: commodorestyle.o] Error 1

I have compiled it on ArchLinux 64-bit. You are right. Please command git pull for IDE65XX. It is solved this problem. Thanks.