Hello, On Wed, 03 Jun 2020, tu...@posteo.de wrote: >In file included from /usr/include/qt5/QtCore/qhashfunctions.h:44, > from /usr/include/qt5/QtCore/qlist.h:47, > from /usr/include/qt5/QtCore/qstringlist.h:41, > from /usr/include/qt5/QtGui/qcolor.h:46, > from /usr/include/qt5/QtGui/qpixmap.h:45, > from /usr/include/qt5/QtGui/QPixmap:1, > from ../widgets/pixmapdial.hpp:21, > from ../widgets/pixmapdial.cpp:18: >/usr/include/qt5/QtCore/qstring.h:393:14: note: declared here > 393 | QString &sprintf(const char *format, ...) > Q_ATTRIBUTE_FORMAT_PRINTF(2, 3); > | ^~~~~~~ >../widgets/pixmapdial.cpp: In member function 'virtual void >PixmapDial::paintEvent(QPaintEvent*)': >../widgets/pixmapdial.cpp:231:26: error: aggregate 'QPainterPath ballPath' has >incomplete type and cannot be defined > 231 | QPainterPath ballPath; > | ^~~~~~~~
I think something similar was on this list a couple of days ago, it's a missing include (that wasn't neccessary before Qt5.15), there's 21 similar bugs filed already c.f.[1]. A quick and easy fix for this problem should be this: 1. create a file /etc/portage/env/missing-qpainterpath-flags and insert this line: ==== CXXFLAGS="${CXXFLAGS} -include QPainterPath" ==== 2. add the line ==== =media-sound/cadence-0.9.0-r4 missing-qpainterpath-flags ==== to /etc/portage/package.env (or /e/p/package.env/qpainterpath.env or some such if you've "directoryfied" your package.env (can you?) ;) [add more lines for specific package versions and revs for the same problem, see [1] for candidates] Yes, that is *quite an ugly hack*, but could be handy while stuff get's patched to work with that specific change of Qt5.15... FWIW: that includes that QPainterPath header in _all_ C++ sources, but what the hey, compilers are so good today, that they throw away anything unused, so it should not matter. It'll slow down the compile a bit... Once e.g. media-sound/cadence is fixed and revbumped/versionbumped, delete that line from package.env. It works here for a quick: ==== # ebuild cadence-0.9.0-r4.ebuid compile [..] c++ -c ../widgets/pixmapdial.cpp -O3 -ffast-math -mtune=generic -msse -mfpmath=sse -Wall -Wextra -DNDEBUG -fPIC -std=c++0x -pipe -O3 -march=native -mtune=native [..] -std=gnu++14 -include QPainterPath -DQT_NO_DEBUG -DQT_NO_DEBUG_STREAM -DQT_NO_DEBUG_OUTPUT -I../widgets -I/usr/include/qt5/QtCore -I/usr/include/qt5 -I/usr/include/qt5/QtGui -DQT_WIDGETS_LIB -I/usr/include/qt5/QtWidgets -DQT_GUI_LIB -DQT_CORE_LIB -o ../widgets/pixmapdial.o c++ -c ../widgets/pixmapkeyboard.cpp [..] [..] >>> Source compiled. ==== HTH, -dnh, tending to be very pragmatic in cases like this ;) [1] https://bugs.gentoo.org/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&f0=OP&f1=OP&f2=alias&f3=short_desc&f4=CP&f5=CP&j1=OR&o2=substring&o3=substring&order=bug_id -- "Humans need fantasy .. to *be* human" -- Death (in Hogfather)