Discussion:
Interest Digest, Vol 86, Issue 18
(too old to reply)
r***@logikalsolutions.com
2018-11-21 14:04:48 UTC
Permalink
This error is still present in current sources. It's no different than any
compilation error and should be fixed. So, yes, we don't verify that
everything builds with C++11. When I say that Qt supports C++11, I mean that
we'll fix it if issues are found. And besides, you built over 99.9%
of Qt with
C++11.
But, automated testing should. This is one of the few places an
automated test is actually useful. Making sure the advertised minimum
compilation standard really does work.

90% of a landing
Loading Image...

Loading Image...

Loading Image...

While we are on the subject of automated testing, I wish I had the
configure statement and the version number, but, one of the "current"
(as in newer than 5.9.7) built without the c++11 standard has another
inexcusable bug automated testing should have stopped. After configure
and make -j3 I issued make install and make install compiled a
ton-o-*(^*(&^. I know this because I saw all of the compilation
warnings spewing past on the screen

If make install builds even one module, that is an __epic fail__. It
means two things.

1) the make script is incorrect
2) that configure is now being completely ignored

make install, when run after make, should never ever launch the
compiler. If it does there is a serious problem which will be very
difficult to track down later.
Just drop the -c++std argument from your configure line. It doesn't help your
case and only made the build break because this particular module wasn't
tested with that option.
Not physically an answer. Forcing c++11 is the only thing which will
make the loadable on 18.04 and later. The C/C++ ABI changes torpedo
everything built by default. The _only_ solution was to drop back to
5.9.7 and use the configure statement which was in the message I
cannot seem to find in the archives right now, might be lag, might be
censorship, might be I'm just too blind. They really should have saved
that bug report email. Especially the configure statement. It took
weeks to find that. At the peak I had 5 machines, 2 I-5, 2 I-7 and a
6-core AMD running through the combinations. It didn't take anywhere
near that balancing act when I did this same project some 3 years ago.

If your application runs on Ubuntu desktops using QWebEngine and you
need "One Deb to Install Them All" from 14 through 18+, that's the
configure you need. Without forcing the c++11 standard, you have no
hope. I tried every standard setting and lots of different configure
statements trying to thread the needle of the C/C++ ABI changes
finding one which could build on 14.04 and run on the later.

Probably should have posted the previous configure statement too. Last
time we had to build on 15.04 and carry the binary backwards because
nothing built on 12.04 could be made to go forward. At least not by
any of us. I forget how many machines we had searching for the magic
combination which did not exist.
--
Roland Hughes, President
Logikal Solutions
(630) 205-1593

http://www.theminimumyouneedtoknow.com
http://www.infiniteexposure.net
http://www.johnsmith-book.com
http://www.logikalblog.com
http://www.interestingauthors.com/blog
http://lesedi.us
Continue reading on narkive:
Loading...