Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 649964 - dev-qt/qtcore-5.7.1-r4 - src_configure(): Failed to process makespec for platform 'linux-g++'
Summary: dev-qt/qtcore-5.7.1-r4 - src_configure(): Failed to process makespec for plat...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Qt Bug Alias
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-03-08 22:06 UTC by Daniel Santos
Modified: 2018-03-12 05:47 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (file_649964.txt,6.62 KB, text/plain)
2018-03-08 22:07 UTC, Daniel Santos
Details
qtcore-5.7.1-r4:20180306-024419.log.gz (qtcore-5.7.1-r4:20180306-024419.log.gz,7.81 KB, application/gzip)
2018-03-08 22:08 UTC, Daniel Santos
Details
environment (environment,117.62 KB, text/plain)
2018-03-08 22:09 UTC, Daniel Santos
Details
qtcore-5.7.1-r4:20180306-024419.log (qtcore-5.7.1-r4:20180306-024419.log,164.06 KB, text/plain)
2018-03-10 00:08 UTC, Michael Palimaka (kensington)
Details
/proc/cpuinfo (cpuinfo,6.29 KB, text/plain)
2018-03-10 21:44 UTC, Daniel Santos
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Santos 2018-03-08 22:06:57 UTC
This is on stable AMD64:

x86_64-pc-linux-gnu-g++ -o "../bin/qmake" project.o option.o property.o main.o ioutils.o proitems.o qmakevfs.o qmakeglobals.o qmakeparser.o qmakeevaluator.o qmakebuiltins.o makefile.o unixmake2.o unixmake.o mingw_make.o winmakefile.o projectgenerator.o meta.o makefiledeps.o metamakefile.o xmloutput.o pbuilder_pbx.o msvc_vcproj.o msvc_vcxproj.o msvc_nmake.o msvc_objectmodel.o msbuild_objectmodel.o cesdkhandler.o qtextcodec.o qutfcodec.o qstring.o qstring_compat.o qstringbuilder.o qtextstream.o qiodevice.o qringbuffer.o qdebug.o qmalloc.o qglobal.o qarraydata.o qbytearray.o qbytearraymatcher.o qdatastream.o qbuffer.o qlist.o qfiledevice.o qfile.o qfilesystementry.o qfilesystemengine.o qfsfileengine.o qfsfileengine_iterator.o qregexp.o qvector.o qbitarray.o qdir.o qdiriterator.o quuid.o qhash.o qfileinfo.o qdatetime.o qstringlist.o qabstractfileengine.o qtemporaryfile.o qmap.o qmetatype.o qsettings.o qsystemerror.o qlibraryinfo.o qvariant.o qvsnprintf.o qlocale.o qlocale_tools.o qlinkedlist.o qnumeric.o qcryptographichash.o qxmlstream.o qxmlutils.o qlogging.o qjson.o qjsondocument.o qjsonparser.o qjsonarray.o qjsonobject.o qjsonvalue.o qfilesystemengine_unix.o qfilesystemiterator_unix.o qfsfileengine_unix.o qlocale_unix.o -Wl,-O1 -Wl,--as-needed -Wl,--gc-sections
Running configuration tests...
Failed to process makespec for platform 'linux-g++'

 * ERROR: dev-qt/qtcore-5.7.1-r4::gentoo failed (configure phase):
 *   configure failed
 *
 * Call stack:
 *     ebuild.sh, line  124:  Called src_configure
 *   environment, line 2803:  Called qt5-build_src_configure
 *   environment, line 2322:  Called qt5_base_configure
 *   environment, line 2437:  Called die
 * The specific snippet of code:
 *       "${S}"/configure "${conf[@]}" || die "configure failed";
 *
 * If you need support, post the output of `emerge --info '=dev-qt/qtcore-5.7.1-r4::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-qt/qtcore-5.7.1-r4::gentoo'`.
 * The complete build log is located at '/var/log/portage/build/dev-qt/qtcore-5.7.1-r4:20180306-024419.log.gz'.
 * For convenience, a symlink to the build log is located at '/tmp/portage/dev-qt/qtcore-5.7.1-r4/temp/build.log.gz'.
 * The ebuild environment file is located at '/tmp/portage/dev-qt/qtcore-5.7.1-r4/temp/environment'.
 * Working directory: '/tmp/portage/dev-qt/qtcore-5.7.1-r4/work/qtbase-opensource-src-5.7.1'
 * S: '/tmp/portage/dev-qt/qtcore-5.7.1-r4/work/qtbase-opensource-src-5.7.1'
Comment 1 Daniel Santos 2018-03-08 22:07:22 UTC
Created attachment 523046 [details]
emerge --info
Comment 2 Daniel Santos 2018-03-08 22:08:58 UTC
Created attachment 523048 [details]
qtcore-5.7.1-r4:20180306-024419.log.gz
Comment 3 Daniel Santos 2018-03-08 22:09:28 UTC
Created attachment 523064 [details]
environment
Comment 4 Daniel Santos 2018-03-09 16:16:24 UTC
Discussed here: https://forums.gentoo.org/viewtopic-p-8193358.html#8193358

Apparently due to using gcc 5.4.0 and not gcc 6+
Comment 5 Michael Palimaka (kensington) gentoo-dev 2018-03-10 00:08:50 UTC
Created attachment 523196 [details]
qtcore-5.7.1-r4:20180306-024419.log
Comment 6 Michael Palimaka (kensington) gentoo-dev 2018-03-10 00:14:25 UTC
Per the forum thread, building with anything prior to GCC 6 on a 17.0 profile is not supported which is why those older versions are masked. Please feel free to reopen if you think I've missed something.
Comment 7 Daniel Santos 2018-03-10 08:28:03 UTC
Sadly, it's still happening with gcc-6.4.0 during the emerge -ev @world.
Comment 8 Andreas Sturmlechner gentoo-dev 2018-03-10 14:07:09 UTC
Okay, if I add -msse4.1 to CFLAGS I get the same error (as it is not supported by my CPU).
Comment 9 Daniel Santos 2018-03-10 21:15:34 UTC
(In reply to Andreas Sturmlechner from comment #8)
> Okay, if I add -msse4.1 to CFLAGS I get the same error (as it is not
> supported by my CPU).

Very interesting.  Do you have a snippet that can cause this test to emit some meaningful output?  This is probably worthy of passing upstream.

I will re-verify my CPU extensions.  I believe that I produced this with my distccflags script (https://github.com/daniel-santos/distccflags), which will not work on GCC 6.x until (and if) 6.5.0 comes out, although the vital patch has reportedly been backported to the 6.x branch.
Comment 10 Daniel Santos 2018-03-10 21:44:04 UTC
Created attachment 523374 [details]
/proc/cpuinfo

sse4.1 is indeed supported on the machine, but the build did succeed with C(XX)FLAGS="-O2", so perhaps it is the -ggdb?  This also fails on another machine where I use CFLAGS="-march=native -O2 -ggdb"
Comment 11 Michael Palimaka (kensington) gentoo-dev 2018-03-10 23:51:22 UTC
Can you check dmesg immediately after a failed build to see if there's any error (such as illegal instruction)?
Comment 12 Andreas Sturmlechner gentoo-dev 2018-03-11 12:03:13 UTC
You can also check Qt 5.9.4 which comes with a lot of configuration changes and in my case makes more sense with the error message:

$ ebuild /usr/portage/dev-qt/qtcore/qtcore-5.9.4-r2.ebuild clean configure
Comment 13 Daniel Santos 2018-03-11 22:24:00 UTC
(In reply to Andreas Sturmlechner from comment #12)
> You can also check Qt 5.9.4 which comes with a lot of configuration changes
> and in my case makes more sense with the error message:
> 
> $ ebuild /usr/portage/dev-qt/qtcore/qtcore-5.9.4-r2.ebuild clean configure

Thanks Andreas, that's mostly what I've been doing, except I was doing clean merge package

(In reply to Michael Palimaka (kensington) from comment #11)
> Can you check dmesg immediately after a failed build to see if there's any
> error (such as illegal instruction)?

Well I found the problem. I'm not sure if it's a bug in GCC, my script or both.  When I run

gcc-7.3.0 -Q --help=target -march=core2 -msse4.1

The output includes these lines (among others):

  -mno-sse4                             [disabled]
  -msse4                                [disabled]
  -msse4.1                              [enabled]

My script interprets -mno-sse4 = disabled as -msse4 = enabled, and then ends up only using the first value for sse4.  So the CFLAGS should not include -msse4 on this machine, as that implies sse4.1 and sse4.2.


So yes, good call Michael:

[438939.557978] traps: qmake[1869] trap invalid opcode ip:555c8b sp:7ffc2ac53fa8 error:0
[438939.557985]  in qmake[400000+2c3000]
[767184.592035] traps: i686-pc-linux-g[8168] trap invalid opcode ip:f7682fdb sp:ffaf5760 error:0
[767184.592041]  in libfontconfig.so.1.10.1[f7676000+44000]
[767184.616910] traps: x86_64-pc-linux[8178] trap invalid opcode ip:7f2d4a8e9b64 sp:7ffde96ae270 error:0
[767184.616915]  in libfontconfig.so.1.10.1[7f2d4a8db000+3f000]
[767301.703665] traps: fc-cache[25176] trap invalid opcode ip:7f5a71f47b64 sp:7ffd227e65a0 error:0
[767301.703670]  in libfontconfig.so.1.10.1[7f5a71f39000+3f000]
[767302.995901] traps: fc-cache[25281] trap invalid opcode ip:7fcfb18bab64 sp:7fff4fabcb40 error:0
[767302.995905]  in libfontconfig.so.1.10.1[7fcfb18ac000+3f000]
[767317.199390] traps: fc-cache[26552] trap invalid opcode ip:7f72b763db64 sp:7ffc424d50e0 error:0
[767317.199395]  in libfontconfig.so.1.10.1[7f72b762f000+3f000]
[767318.647312] traps: fc-cache[26679] trap invalid opcode ip:7f7cd033eb64 sp:7ffdfe25bf40 error:0
[767318.647317]  in libfontconfig.so.1.10.1[7f7cd0330000+3f000]
[776298.705793] traps: gs[26912] trap invalid opcode ip:7fb674abcb64 sp:7ffe15cd61a0 error:0
[776298.705799]  in libfontconfig.so.1.10.1[7fb674aae000+3f000]
[778281.223176] traps: qmake[5457] trap invalid opcode ip:a25114b67b sp:7ffecd9594e8 error:0
[778281.223181]  in qmake[a250ff3000+2c3000]
[852101.738217] traps: qmake[9748] trap invalid opcode ip:bb7663467b sp:7ffc34521318 error:0
[852101.738221]  in qmake[bb764dc000+2c3000]
[852700.269215] traps: qmake[29831] trap invalid opcode ip:59fdbb567b sp:7fff62cf6a38 error:0
[852700.269220]  in qmake[59fda5d000+2c3000]


This still deserves an upstream bug report for being so tight-lipped however.  I'll fix this problem in the distccflags script.  BTW, the distcc project will take this if somebody converts it to C.  I'm really tied up at the moment, although I'll likely have time in a few weeks.
Comment 14 Michael Palimaka (kensington) gentoo-dev 2018-03-12 01:57:22 UTC
I struggled to reproduce this with 5.7(!) but 5.9 died nicely with an "illegal instruction" error.
Comment 15 Davide Pesavento (RETIRED) gentoo-dev 2018-03-12 05:47:52 UTC
Rejecting per comment 13 then.