[oe] nativesdk-qtbase 5.9.2 C++11 errors with gcc 6.3?

Denys Dmytriyenko denis at denix.org
Fri Oct 13 20:34:34 UTC 2017


On Fri, Oct 13, 2017 at 03:47:29PM -0400, Denys Dmytriyenko wrote:
> On Fri, Oct 13, 2017 at 11:57:17AM -0700, Khem Raj wrote:
> > On Fri, Oct 13, 2017 at 10:35 AM, Denys Dmytriyenko <denis at denix.org> wrote:
> > > On Thu, Oct 12, 2017 at 08:48:25PM -0700, Khem Raj wrote:
> > >> On Fri, Oct 13, 2017 at 01:21:10AM +0000, Denys Dmytriyenko wrote:
> > >> > Khem,
> > >> >
> > >> > I tried following on your suggestion to add #include <cmath>, but it is
> > >> > already there in src/corelib/global/qnumeric_p.h
> > >> >
> > >> > Not sure why target qtbase builds fine with oe-core gcc 6.3.0, but
> > >> > nativesdk-qtbase fails with this error... Any more ideas? Thanks.
> > >>
> > >> Do you use uninative ? if not then try with uninative.
> > >> It seems to be mixing headers from your build host and nativesdk sysroot
> > >> there could be several reasons for that. You can also try to build on
> > >> a different distro on host may be one which has gcc6 as host gcc.
> > >
> > > Tried uninative - didn't help, same issue.
> > >
> > > I'm not so sure host headers are getting in the mix - it's Ubuntu 16.04 with
> > > gcc 5.4 on it, while switching between gcc 6.3 and gcc 7.2 in oe-core/master
> > > works with 7.2, but not 6.3.
> > >
> > > I can see if I can try on a host with gcc 6...
> > 
> > I have gcc 6.4 recipes here
> > 
> > https://github.com/kraj/openembedded-core/tree/kraj/master
> > 
> > https://github.com/kraj/openembedded-core/commit/c5afea428484b8af7449e80db109913b81f40f18
> > https://github.com/kraj/openembedded-core/commit/e0c1d5bab99f6fd75fea5f89cecb7dcffdbae3bf

And gcc 6.4 from 2 patches above didn't help on Ubuntu 16.04...


> BTW, tried on my Gentoo machine with gcc 6.4 as a host and it worked...
> So, it does look like a host contamination in Ubuntu 16.04 with gcc 5.4.
> But why didn't uninative help?
> 
> 
> > >> > On Tue, Oct 03, 2017 at 07:45:35PM -0400, Denys Dmytriyenko wrote:
> > >> > > Martin, Khem,
> > >> > >
> > >> > > Have you tried building Qt 5.9 with gcc 6.3 from oe-core? I'm seeing bunch of
> > >> > > what seems to be C++11 related errors during do_configure of nativesdk-qtbase.
> > >> > > Target qtbase builds fine and switching to gcc 7.2 seems to resolve it as well.
> > >> > >
> > >> > > Any ideas or pointers? Thanks!
> > >>
> > >>
> > >> > >
> > >> > >
> > >> > > Errors are like these:
> > >> > >
> > >> > > In file included from ../include/QtCore/5.9.2/QtCore/private/qnumeric_p.h:1:0,
> > >> > >                  from /OE/master/build/tmp-glibc/work/x86_64-nativesdk-oe-linux/nativesdk-qtbase/5.9.2+gitAUTOINC+73573fce29-r0/git/src/corelib/tools/qarraydata.cpp:42:
> > >> > > ../include/QtCore/5.9.2/QtCore/private/../../../../../../git/src/corelib/global/qnumeric_p.h: In function 'bool qnumeric_std_wrapper::__builtin_isnan(double)':
> > >> > > ../include/QtCore/5.9.2/QtCore/private/../../../../../../git/src/corelib/global/qnumeric_p.h:104:45: error: '__builtin_isnan' is not a member of 'std'
> > >> > >  static inline bool isnan(double d) { return std::isnan(d); }
> > >> > >                                              ^~~
> > >> > > ../include/QtCore/5.9.2/QtCore/private/../../../../../../git/src/corelib/global/qnumeric_p.h:104:45: note: suggested alternatives:
> > >> > > <built-in>: note:   '__builtin_isnan'
> > >> > > In file included from /OE/master/build/tmp-glibc/work/x86_64-nativesdk-oe-linux/nativesdk-qtbase/5.9.2+gitAUTOINC+73573fce29-r0/recipe-sysroot/tmp/sdk/sysroots/x86_64-oe-linux/usr/include/c++/6.3.0/cmath:45:0,
> > >> > >                  from ../include/QtCore/5.9.2/QtCore/private/../../../../../../git/src/corelib/global/qnumeric_p.h:56,
> > >> > >                  from ../include/QtCore/5.9.2/QtCore/private/qnumeric_p.h:1,
> > >> > >                  from /OE/master/build/tmp-glibc/work/x86_64-nativesdk-oe-linux/nativesdk-qtbase/5.9.2+gitAUTOINC+73573fce29-r0/git/src/corelib/tools/qarraydata.cpp:42:
> > >> > > ../include/QtCore/5.9.2/QtCore/private/../../../../../../git/src/corelib/global/qnumeric_p.h:104:20: note:   'qnumeric_std_wrapper::__builtin_isnan'
> > >> > >  static inline bool isnan(double d) { return std::isnan(d); }
> > >> > >                     ^
> > >> > > ../include/QtCore/5.9.2/QtCore/private/../../../../../../git/src/corelib/global/qnumeric_p.h: At global scope:
> > >> > > ../include/QtCore/5.9.2/QtCore/private/../../../../../../git/src/corelib/global/qnumeric_p.h:105:20: error: expected ')' before '(' token
> > >> > >  static inline bool isinf(double d) { return std::isinf(d); }
> > >> > >                     ^
> > >> > > In file included from ../include/QtCore/5.9.2/QtCore/private/qnumeric_p.h:1:0,
> > >> > >                  from /OE/master/build/tmp-glibc/work/x86_64-nativesdk-oe-linux/nativesdk-qtbase/5.9.2+gitAUTOINC+73573fce29-r0/git/src/corelib/tools/qarraydata.cpp:42:
> > >> > > ../include/QtCore/5.9.2/QtCore/private/../../../../../../git/src/corelib/global/qnumeric_p.h: In function 'bool qnumeric_std_wrapper::__builtin_isfinite(double)':
> > >> > > ../include/QtCore/5.9.2/QtCore/private/../../../../../../git/src/corelib/global/qnumeric_p.h:106:48: error: '__builtin_isfinite' is not a member of 'std'
> > >> > >  static inline bool isfinite(double d) { return std::isfinite(d); }
> > >> > >                                                 ^~~
> > >> > > ../include/QtCore/5.9.2/QtCore/private/../../../../../../git/src/corelib/global/qnumeric_p.h:106:48: note: suggested alternatives:
> > >> > > <built-in>: note:   '__builtin_isfinite'
> > >> > > --
> > >> > > _______________________________________________
> > >> > > Openembedded-devel mailing list
> > >> > > Openembedded-devel at lists.openembedded.org
> > >> > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > >>
> > 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel



More information about the Openembedded-devel mailing list