Subject: Re: bug#67608: qtbase fails to build on i686

From: John Kehayias <[email-masked]>
Date: Sun, 03 Dec 2023 19:19:56 +0000

Hi Maxim,

On Sun, Dec 03, 2023 at 01:32 PM, Maxim Cournoyer wrote:

> Hi,
>
> After recent mesa/xorg upgrades, qtbase fails to build on i686, per
> <https://ci.guix.gnu.org/build/2700964/details>.

I saw this when I was working on the mesa-updates branch, but I didn't
think it was a new failure. I looked back just now and even going to
July or further back I don't see any successful builds of qtbase-6.*
on i686-linux. The most recent version has the same failures as this
log, pre-mesa-updates. Looked like a previous version of qtbase-6 had
a different failure though.

>
> [ 59%] Building CXX object src/gui/CMakeFiles/Gui.dir/text/freetype/qfreetypefontdatabase.cpp.o
> /tmp/guix-build-qtbase-6.5.2.drv-0/qtbase-everywhere-src-6.5.2/src/gui/painting/qdrawhelper_avx2.cpp: In function ‘const QRgba64* fetchRGBA64ToRGBA64PM_avx2(QRgba64*, const uchar*, int, int, const QList<unsigned int>*, QDitherInfo*)’:
> /tmp/guix-build-qtbase-6.5.2.drv-0/qtbase-everywhere-src-6.5.2/src/gui/painting/qdrawhelper_avx2.cpp:1353:33: error: could not convert ‘vs’ from ‘__m128i’ to ‘QRgba64’
>  1353 |         vs = multiplyAlpha65535(vs, va);
>       |                                 ^~
>       |                                 |
>       |                                 __m128i
> [ 59%] Building CXX object src/gui/CMakeFiles/Gui.dir/text/unix/qfontconfigdatabase.cpp.o
> make[2]: *** [src/gui/CMakeFiles/Gui.dir/build.make:3093: src/gui/CMakeFiles/Gui.dir/painting/qdrawhelper_avx2.cpp.o] Error 1
> make[2]: *** Waiting for unfinished jobs....
> make[2]: Leaving directory '/tmp/guix-build-qtbase-6.5.2.drv-0/build'
> make[1]: *** [CMakeFiles/Makefile2:21588: src/gui/CMakeFiles/Gui.dir/all] Error 2
> make[1]: Leaving directory '/tmp/guix-build-qtbase-6.5.2.drv-0/build'
> make: *** [Makefile:149: all] Error 2
> error: in phase 'build': uncaught exception:
> %exception #<&invoke-error program: "make" arguments: ("-j" "16") exit-status: 2 term-signal: #f stop-signal: #f>
> phase `build' failed after 578.8 seconds
> command "make" "-j" "16" failed with status 2
> builder for `/gnu/store/rja0mdhh29hl3rr5mk9xa2mq55x3g0ja-qtbase-6.5.2.drv' failed with exit code 1
> @ build-failed /gnu/store/rja0mdhh29hl3rr5mk9xa2mq55x3g0ja-qtbase-6.5.2.drv - 1 builder for `/gnu/store/rja0mdhh29hl3rr5mk9xa2mq55x3g0ja-qtbase-6.5.2.drv' failed with exit code 1
>
> CC'ing John in case they'd have a clue as to what this may be caused by.

As for the actual cause, I don't have a clue. There was a failure
cause by an update on that branch, which I had fixed in
aee3c5a894fddf88810f18fa8880b423b078b3fa (from libxkbcommon update).

Was there a version of qtbase-6 that builds on i686?

John