[Development] Updating x86 SIMD support in Qt
Thiago Macieira
thiago.macieira at intel.com
Thu Mar 24 02:59:12 CET 2022
On Wednesday, 23 March 2022 20:34:07 -03 Volker Hilsheimer wrote:
> I have a possibly wrong hunch that building Qt Multimedia fails because of
> this. This is in a Ubuntu 20.04 VM in the VMware Fusion 12 provider, and
> the hardware version is maxed out (it wasn’t earlier, but didn’t help to
> put it to level 18). So there’s not a whole lot I can do on the VM
> provisioning side, I think.
> /home/vagrant/dev-build/qtbase/include/QtCore/6.4.0/QtCore/private/../../../
> ../../../../qt/dev/qtbase/src/corelib/global/qsimd_p.h:256:8: error: #error
> "Please enable all x86-64-v3 extensions; you probably want to use
> -march=haswell or -march=x86-64-v3 instead of -mavx2"
> /home/vagrant/dev-build/qtbase/include/QtCore/6.4.0/QtCore/private/../../../
> ../../../../qt/dev/qtbase/src/corelib/global/qsimd_p.h:253:81: error:
> ‘__FMA__’ was not declared in this scope>
By the way, please note that VirtualBox enables AVX2 but not FMA and some of
the other required functionality for x86-64-v3. So a VirtualBox environment is
*not* x86-64-v3 and therefore you cannot run such binaries and you cannot
compile Qt with -march=native in it.
As far as I know, this is a problem exclusive to VirtualBox. It wouldn't
affect VMWare or qemu KVM-accelerated virtualisation. I also haven't noticed
it on Parallels on my Mac. It's been reported but hasn't been fixed.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel DPG Cloud Engineering
More information about the Development
mailing list