Qt5.12.3 make fails with errors from assembler
-
I got this error when I was manually trying to install Qt5.12. I was initially trying to install Qtcreator 4.9.1 only but online installer didn't work and when I tried to install, I came to know of Qt package as one of dependency and while installing it I got this error. Let me know what more information is required to make any comment.
% g++ --version
g++ (GCC) 8.3.0
% cat /etc/redhat-release
CentOS release 6.10 (Final)g++ -c -pipe -O3 -std=c++1z -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -W -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -D_REENTRANT -fPIC -DQT_NO_USING_NAMESPACE -DQT_NO_FOREACH -DENABLE_PIXMAN_DRAWHELPERS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_GUI_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_CORE_LIB -march=core-avx2 -I. -I../../include -I../../include/QtGui -I../../include/QtGui/5.12.3 -I../../include/QtGui/5.12.3/QtGui -I.tracegen -isystem /usr/include/libdrm -I../../include/QtCore/5.12.3 -I../../include/QtCore/5.12.3/QtCore -I../../include/QtCore -I.moc -isystem /usr/include/libpng12 -I../3rdparty/harfbuzz-ng/include -I../../mkspecs/linux-g++ painting/qdrawhelper_avx2.cpp -o .obj/qdrawhelper_avx2.o
{standard input}: Assembler messages:
{standard input}:54: Error: no such instruction:vpbroadcastw %xmm3,%ymm3' {standard input}:155: Error: suffix or operands invalid for
vpsrlw'
{standard input}:156: Error: suffix or operands invalid forvpand' {standard input}:157: Error: suffix or operands invalid for
vpmullw'
{standard input}:158: Error: suffix or operands invalid forvpmullw' {standard input}:159: Error: suffix or operands invalid for
vpsrlw'
{standard input}:160: Error: suffix or operands invalid forvpsrlw' {standard input}:161: Error: suffix or operands invalid for
vpaddw'
{standard input}:162: Error: suffix or operands invalid forvpaddw' {standard input}:163: Error: suffix or operands invalid for
vpaddw'
{standard input}:164: Error: suffix or operands invalid forvpand' {standard input}:165: Error: suffix or operands invalid for
vpaddw'
{standard input}:166: Error: suffix or operands invalid forvpsrlw' {standard input}:167: Error: suffix or operands invalid for
vpandn'
{standard input}:168: Error: suffix or operands invalid forvpor' {standard input}:170: Error: suffix or operands invalid for
vpshufb'I notice
-march=core-avx2
in compile command which looks suspicious to me. Does anyone know where is it coming from and how it can be fixed ?
-
@gusain said in Qt5.12.3 make fails with errors from assembler:
I was initially trying to install Qtcreator 4.9.1 only but online installer didn't work and when I tried to install, I came to know of Qt package as one of dependency and while installing it I got this error
CentOS 6.x is not supported by Qt anymore (https://doc.qt.io/qt-5/supported-platforms.html).
-march=core-avx2
That's added by CPU capabilities detection code. You can manually tweak it by passing these flags to
configure
:-sse2 ................ Use SSE2 instructions [auto] -sse3/-ssse3/-sse4.1/-sse4.2/-avx/-avx2/-avx512 Enable use of particular x86 instructions [auto] Enabled ones are still subject to runtime detection. -mips_dsp/-mips_dspr2 Use MIPS DSP/rev2 instructions [auto]
If you want to disable a particular set of instructions, use
-no-flag
like this:configure -no-avx2
If you need more help, try on Qt interest mailing list, there are people there who actually wrote that CPU instruction set support stuff, so they should be able to provide better assistance.