app-office/akonadi-server fails to build on my system when this error is encountered at the 20% mark: /var/tmp/portage/app-office/akonadi-server-1.13.0/work/akonadi-1.13.0/server/src/connection.cpp: In constructor 'Akonadi::Server::Connection::Connection(quintptr, QObject*)': /var/tmp/portage/app-office/akonadi-server-1.13.0/work/akonadi-1.13.0/server/src/connection.cpp:60:7: error: type 'Akonadi::Server::Connection' is not a direct base of 'Akonadi::Server::Connection' Output of `emerge -pqv '=app-office/akonadi-server-1.13.0::gentoo'`: [ebuild U ] app-office/akonadi-server-1.13.0 [1.12.1-r1] USE="mysql qt4 soprano -postgres (-qt5) -sqlite {-test}" `emerge --info '=app-office/akonadi-server-1.13.0::gentoo'` output attached. build.log and environment attachments to follow.
Created attachment 383010 [details] output of `emerge --info '=app-office/akonadi-server-1.13.0::gentoo'`
Created attachment 383012 [details] /var/tmp/portage/app-office/akonadi-server-1.13.0/temp/build.log
Created attachment 383014 [details] var/tmp/portage/app-office/akonadi-server-1.13.0/temp/environment
Does it work with gcc-4.7 (latest stable) or later?
Confirmed, it works. For posterity: as discussed on IRC, the GCC version check used on kde-base/krfb needs to be applied to this ebuild until a better version check solution is found. Thanks! I'll leave it to you to resolve from here.
Fixed.
I read comments 4 and 5 as implying that gcc 4.7 is OK for akonadi-server-1.13.0, but the ebuild is explicitly failing on gcc 4.7. (I have only gcc 4.7.3-r1 installed.) Am I misreading something, is the test wrong, or something else? Also, do I read the reference to the IRC discussion as meaning there is a reason to not just use a build time depend? Just for reference, is that discussion recorded or documented anywhere? It's really annoying to not hit this issue until you are into the emerge having started building things.
Looks like it should be $(gcc-minor-version) -lt 7 rather than -le. A build-time depend on gcc:4.7 is not particularly useful, because it does not guarantee that 4.7 is actually active, and the user might not be using GCC anyway (the version check does handle clang IIRC). There is a recent thread on gentoo-dev related to this issue. It would be really useful if we had some better way of handling it. I did experiment with automatically selecting a newer compiler if required in cmake eclass a while ago, but never got around to finishing it.
Created attachment 389526 [details, diff] Patch to allow akonadi-server-1.13.0 compile with gcc 4.7.3 This patch allowed me compile akonadi-server with gcc 4.7.3 here.
Thanks, fixed in CVS. + 09 Dec 2014; Michael Palimaka <kensington@gentoo.org> + akonadi-server-1.13.0.ebuild: + Fix GCC version check logic wrt bug #520102.