Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 617838

Summary: x11-wm/lumina fails to build with gcc-6
Product: Gentoo Linux Reporter: Lars Wendler (Polynomial-C) <polynomial-c>
Component: Current packagesAssignee: Rubin Simons <rubin>
Status: RESOLVED FIXED    
Severity: normal CC: grozin, proxy-maint
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
URL: https://github.com/trueos/lumina/issues/226
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 582084    
Attachments: build.log with QMAKE_CFLAGS_ISYSTEM on gcc:5.4.0

Description Lars Wendler (Polynomial-C) gentoo-dev 2017-05-08 12:05:02 UTC
/usr/lib64/qt5/bin/uic desktop-plugins/rssreader/RSSFeedPlugin.ui -o ui_RSSFeedPlugin.h
x86_64-pc-linux-gnu-g++ -c -march=native -mtune=native -O2 -pipe -Wall -W -D_REENTRANT -fPIC -DPREFIX=QString\(\"/usr\"\) -DL_ETCDIR=QString\(\"/etc\"\) -DL_SHAREDIR=QString\(\"/usr/share\"\) -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_WIDGETS_LIB -DQT_X11EXTRAS_LIB -DQT_MULTIMEDIA_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CONCURRENT_LIB -DQT_CORE_LIB -I. -I../libLumina -isystem /usr/include/qt5 -I/usr -isystem /usr/include -I/var/tmp/portage/x11-wm/lumina-1.2.0/work/lumina-1.2.0/src-qt5/core/lumina-desktop -isystem /usr/include/qt5/QtSvg -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtX11Extras -isystem /usr/include/qt5/QtMultimedia -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtConcurrent -isystem /usr/include/qt5/QtCore -I. -I. -I/usr/lib64/qt5/mkspecs/linux-g++ -o ResizeMenu.o ../libLumina/ResizeMenu.cpp
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.3.0/include/g++-v6/bits/stl_algo.h:59:0,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/6.3.0/include/g++-v6/algorithm:62,
                 from /usr/include/qt5/QtCore/qglobal.h:94,
                 from /usr/include/qt5/QtGui/qwindowdefs.h:43,
                 from /usr/include/qt5/QtWidgets/qwidget.h:43,
                 from /usr/include/qt5/QtWidgets/qmenu.h:43,
                 from /usr/include/qt5/QtWidgets/QMenu:1,
                 from ../libLumina/ResizeMenu.h:10,
                 from ../libLumina/ResizeMenu.cpp:7:
/usr/lib/gcc/x86_64-pc-linux-gnu/6.3.0/include/g++-v6/cstdlib:75:25: fatal error: stdlib.h: No such file or directory
 #include_next <stdlib.h>
                         ^
compilation terminated.
make[3]: *** [Makefile:1712: ResizeMenu.o] Error 1



Upstream recommends to add "QMAKE_CFLAGS_ISYSTEM=" to qmake-qt5. I've tested this and it fixes the issue. What I do not know is if that fix also works with gcc-5 and older.
Comment 1 lekto 2017-05-13 08:24:57 UTC
Created attachment 472484 [details]
build.log with QMAKE_CFLAGS_ISYSTEM on gcc:5.4.0
Comment 2 Andrey Grozin gentoo-dev 2017-07-06 11:38:59 UTC
If I rename lumina-1.2.0.ebuild -> lumina-1.3.0.ebuild and append QMAKE_CFLAGS_ISYSTEM= to the eqmake command line, lumina-1.3.0 compiles successfully with gcc-6.3.0. It would be good to bump lumina to 1.3.0, but this makes no sense until the current problem is fixed. Is there any way to add QMAKE_CFLAGS_ISYSTEM= conditionally on the gcc version used?
Comment 3 charles17 2017-07-07 07:51:58 UTC
(In reply to Andrey Grozin from comment #2)
> If I rename lumina-1.2.0.ebuild -> lumina-1.3.0.ebuild and append
> QMAKE_CFLAGS_ISYSTEM= to the eqmake command line, lumina-1.3.0 compiles
> successfully with gcc-6.3.0. It would be good to bump lumina to 1.3.0, but
> this makes no sense until the current problem is fixed. Is there any way to
> add QMAKE_CFLAGS_ISYSTEM= conditionally on the gcc version used?

See https://github.com/gentoo/gentoo/pull/5002
I did not test with gcc-6.3.0 since I am using mostly amd64 (stable).  Please comment/review the PR.
Comment 4 charles17 2017-07-07 12:55:49 UTC
(In reply to charles17 from comment #3)
> (In reply to Andrey Grozin from comment #2)
> > If I rename lumina-1.2.0.ebuild -> lumina-1.3.0.ebuild and append
> > QMAKE_CFLAGS_ISYSTEM= to the eqmake command line, lumina-1.3.0 compiles
> > successfully with gcc-6.3.0. It would be good to bump lumina to 1.3.0, but
> > this makes no sense until the current problem is fixed. Is there any way to
> > add QMAKE_CFLAGS_ISYSTEM= conditionally on the gcc version used?
> 
> See https://github.com/gentoo/gentoo/pull/5002
> I did not test with gcc-6.3.0 since I am using mostly amd64 (stable). 
> Please comment/review the PR.

Done
Comment 5 Lars Wendler (Polynomial-C) gentoo-dev 2017-07-20 13:29:56 UTC
commit 1009be81becb469ad7408544c67173db79312aca
Author:     charIes17 <charles17@arcor.de>
AuthorDate: Mon Jul 10 08:46:59 2017
Commit:     Lars Wendler <polynomial-c@gentoo.org>
CommitDate: Thu Jul 20 15:26:30 2017

    x11-wm/lumina: Bug 617838 and more
    
    Fix for https://bugs.gentoo.org/617838
    
    Fix for https://bugs.gentoo.org/616590
    
    Switch HOMEPAGE to https://
    
    Introduce desktop-utils USE flag for Lumina's desktop utilities
    
    Use ${PV/_/-} for Lumina's patchsets
    
    Patch 1.2.0-desktop-files.patch
    
    Package-Manager: Portage-2.3.6, Repoman-2.3.1
    Closes: https://github.com/gentoo/gentoo/pull/5002