错误描述:在银河麒麟系统虚拟机上编译qt源码,qt源码版本为5.15.x版本,编译指令与报错如下:
user@user-pc:~/下载/qt-everywhere-src-5.15.17/build$ ../configure --prefix=/usr/local/qt5.15.17 -static -opensource -confirm-license -nomake examples -nomake tests
+ cd qtbase
+ /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/configure -top-level --prefix=/usr/local/qt5.15.17 -static -opensource -confirm-license -nomake examples -nomake tests
Preparing build tree...
Creating qmake...
.In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:99,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/include/QtCore/5.15.17/QtCore/private/../../../../../src/corelib/tools/qsimd_p.h:191,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/include/QtCore/5.15.17/QtCore/private/qsimd_p.h:1,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/src/corelib/codecs/qutfcodec.cpp:46:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectintrin.h:33:40: error: attribute(target("avx512vp2intersect")) is unknown
33 | #pragma GCC target("avx512vp2intersect")
| ^
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectintrin.h: In function ‘void _mm512_2intersect_epi32(__m512i, __m512i, __mmask16*, __mmask16*)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectintrin.h:42:3: error: ‘__builtin_ia32_2intersectd512’ was not declared in this scope; did you mean ‘__builtin_ia32_truncpd512’?
42 | __builtin_ia32_2intersectd512 (__U, __M, (__v16si) __A, (__v16si) __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_truncpd512
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectintrin.h: In function ‘void _mm512_2intersect_epi64(__m512i, __m512i, __mmask8*, __mmask8*)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectintrin.h:50:3: error: ‘__builtin_ia32_2intersectq512’ was not declared in this scope; did you mean ‘__builtin_ia32_ptestnmq512’?
50 | __builtin_ia32_2intersectq512 (__U, __M, (__v8di) __A, (__v8di) __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_ptestnmq512
In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:101,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/include/QtCore/5.15.17/QtCore/private/../../../../../src/corelib/tools/qsimd_p.h:191,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/include/QtCore/5.15.17/QtCore/private/qsimd_p.h:1,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/src/corelib/codecs/qutfcodec.cpp:46:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectvlintrin.h: At global scope:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectvlintrin.h:33:49: error: attribute(target("avx512vp2intersect")) is unknown
33 | #pragma GCC target("avx512vp2intersect,avx512vl")
| ^
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectvlintrin.h: In function ‘void _mm_2intersect_epi32(__m128i, __m128i, __mmask8*, __mmask8*)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectvlintrin.h:41:3: error: ‘__builtin_ia32_2intersectd128’ was not declared in this scope; did you mean ‘__builtin_ia32_ptestnmd128’?
41 | __builtin_ia32_2intersectd128 (__U, __M, (__v4si) __A, (__v4si) __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_ptestnmd128
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectvlintrin.h: In function ‘void _mm256_2intersect_epi32(__m256i, __m256i, __mmask8*, __mmask8*)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectvlintrin.h:49:3: error: ‘__builtin_ia32_2intersectd256’ was not declared in this scope; did you mean ‘__builtin_ia32_vtestcpd256’?
49 | __builtin_ia32_2intersectd256 (__U, __M, (__v8si) __A, (__v8si) __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vtestcpd256
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectvlintrin.h: In function ‘void _mm_2intersect_epi64(__m128i, __m128i, __mmask8*, __mmask8*)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectvlintrin.h:56:3: error: ‘__builtin_ia32_2intersectq128’ was not declared in this scope; did you mean ‘__builtin_ia32_ptestnmq128’?
56 | __builtin_ia32_2intersectq128 (__U, __M, (__v2di) __A, (__v2di) __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_ptestnmq128
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectvlintrin.h: In function ‘void _mm256_2intersect_epi64(__m256i, __m256i, __mmask8*, __mmask8*)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vp2intersectvlintrin.h:64:3: error: ‘__builtin_ia32_2intersectq256’ was not declared in this scope; did you mean ‘__builtin_ia32_ptestnmq256’?
64 | __builtin_ia32_2intersectq256 (__U, __M, (__v4di) __A, (__v4di) __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_ptestnmq256
In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:137,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/include/QtCore/5.15.17/QtCore/private/../../../../../src/corelib/tools/qsimd_p.h:191,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/include/QtCore/5.15.17/QtCore/private/qsimd_p.h:1,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/src/corelib/codecs/qutfcodec.cpp:46:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: At global scope:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:33:41: error: attribute(target("avx512bf16")) is unknown
33 | #pragma GCC target("avx512bf16,avx512vl")
| ^
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m256bh _mm256_cvtne2ps_pbh(__m256, __m256)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:52:20: error: ‘__builtin_ia32_cvtne2ps2bf16_v16hi’ was not declared in this scope; did you mean ‘__builtin_ia32_vpshldv_v16hi’?
52 | return (__m256bh)__builtin_ia32_cvtne2ps2bf16_v16hi(__A, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpshldv_v16hi
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m256bh _mm256_mask_cvtne2ps_pbh(__m256bh, __mmask16, __m256, __m256)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:59:20: error: ‘__builtin_ia32_cvtne2ps2bf16_v16hi_mask’ was not declared in this scope; did you mean ‘__builtin_ia32_vpshldv_v16hi_mask’?
59 | return (__m256bh)__builtin_ia32_cvtne2ps2bf16_v16hi_mask(__C, __D, __A, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpshldv_v16hi_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m256bh _mm256_maskz_cvtne2ps_pbh(__mmask16, __m256, __m256)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:66:20: error: ‘__builtin_ia32_cvtne2ps2bf16_v16hi_maskz’ was not declared in this scope; did you mean ‘__builtin_ia32_vpshldv_v16hi_maskz’?
66 | return (__m256bh)__builtin_ia32_cvtne2ps2bf16_v16hi_maskz(__B, __C, __A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpshldv_v16hi_maskz
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128bh _mm_cvtne2ps_pbh(__m128, __m128)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:73:20: error: ‘__builtin_ia32_cvtne2ps2bf16_v8hi’ was not declared in this scope; did you mean ‘__builtin_ia32_cvtpd2ps256_mask’?
73 | return (__m128bh)__builtin_ia32_cvtne2ps2bf16_v8hi(__A, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_cvtpd2ps256_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128bh _mm_mask_cvtne2ps_pbh(__m128bh, __mmask8, __m128, __m128)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:80:20: error: ‘__builtin_ia32_cvtne2ps2bf16_v8hi_mask’ was not declared in this scope; did you mean ‘__builtin_ia32_vpshldv_v8hi_mask’?
80 | return (__m128bh)__builtin_ia32_cvtne2ps2bf16_v8hi_mask(__C, __D, __A, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpshldv_v8hi_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128bh _mm_maskz_cvtne2ps_pbh(__mmask8, __m128, __m128)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:87:20: error: ‘__builtin_ia32_cvtne2ps2bf16_v8hi_maskz’ was not declared in this scope; did you mean ‘__builtin_ia32_vpshldv_v8hi_maskz’?
87 | return (__m128bh)__builtin_ia32_cvtne2ps2bf16_v8hi_maskz(__B, __C, __A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpshldv_v8hi_maskz
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128bh _mm256_cvtneps_pbh(__m256)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:96:20: error: ‘__builtin_ia32_cvtneps2bf16_v8sf’ was not declared in this scope; did you mean ‘__builtin_ia32_cvttps2qq512_mask’?
96 | return (__m128bh)__builtin_ia32_cvtneps2bf16_v8sf(__A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_cvttps2qq512_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128bh _mm256_mask_cvtneps_pbh(__m128bh, __mmask8, __m256)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:103:20: error: ‘__builtin_ia32_cvtneps2bf16_v8sf_mask’ was not declared in this scope; did you mean ‘__builtin_ia32_cvtps2qq128_mask’?
103 | return (__m128bh)__builtin_ia32_cvtneps2bf16_v8sf_mask(__C, __A, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_cvtps2qq128_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128bh _mm256_maskz_cvtneps_pbh(__mmask8, __m256)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:110:20: error: ‘__builtin_ia32_cvtneps2bf16_v8sf_maskz’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusd_v8si_maskz’?
110 | return (__m128bh)__builtin_ia32_cvtneps2bf16_v8sf_maskz(__B, __A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusd_v8si_maskz
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128bh _mm_cvtneps_pbh(__m128)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:117:20: error: ‘__builtin_ia32_cvtneps2bf16_v4sf’ was not declared in this scope; did you mean ‘__builtin_ia32_cvttps2qq512_mask’?
117 | return (__m128bh)__builtin_ia32_cvtneps2bf16_v4sf(__A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_cvttps2qq512_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128bh _mm_mask_cvtneps_pbh(__m128bh, __mmask8, __m128)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:124:20: error: ‘__builtin_ia32_cvtneps2bf16_v4sf_mask’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusd_v4si_mask’?
124 | return (__m128bh)__builtin_ia32_cvtneps2bf16_v4sf_mask(__C, __A, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusd_v4si_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128bh _mm_maskz_cvtneps_pbh(__mmask8, __m128)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:131:20: error: ‘__builtin_ia32_cvtneps2bf16_v4sf_maskz’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusd_v4si_maskz’?
131 | return (__m128bh)__builtin_ia32_cvtneps2bf16_v4sf_maskz(__B, __A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusd_v4si_maskz
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m256 _mm256_dpbf16_ps(__m256, __m256bh, __m256bh)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:140:18: error: ‘__builtin_ia32_dpbf16ps_v8sf’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusds_v8si’?
140 | return (__m256)__builtin_ia32_dpbf16ps_v8sf(__A, __B, __C);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusds_v8si
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m256 _mm256_mask_dpbf16_ps(__m256, __mmask8, __m256bh, __m256bh)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:147:18: error: ‘__builtin_ia32_dpbf16ps_v8sf_mask’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusds_v8si_mask’?
147 | return (__m256)__builtin_ia32_dpbf16ps_v8sf_mask(__A, __C, __D, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusds_v8si_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m256 _mm256_maskz_dpbf16_ps(__mmask8, __m256, __m256bh, __m256bh)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:154:18: error: ‘__builtin_ia32_dpbf16ps_v8sf_maskz’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusds_v8si_maskz’?
154 | return (__m256)__builtin_ia32_dpbf16ps_v8sf_maskz(__B, __C, __D, __A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusds_v8si_maskz
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128 _mm_dpbf16_ps(__m128, __m128bh, __m128bh)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:161:18: error: ‘__builtin_ia32_dpbf16ps_v4sf’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusds_v4si’?
161 | return (__m128)__builtin_ia32_dpbf16ps_v4sf(__A, __B, __C);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusds_v4si
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128 _mm_mask_dpbf16_ps(__m128, __mmask8, __m128bh, __m128bh)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:168:18: error: ‘__builtin_ia32_dpbf16ps_v4sf_mask’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusds_v4si_mask’?
168 | return (__m128)__builtin_ia32_dpbf16ps_v4sf_mask(__A, __C, __D, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusds_v4si_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h: In function ‘__m128 _mm_maskz_dpbf16_ps(__mmask8, __m128, __m128bh, __m128bh)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16vlintrin.h:175:18: error: ‘__builtin_ia32_dpbf16ps_v4sf_maskz’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusds_v4si_maskz’?
175 | return (__m128)__builtin_ia32_dpbf16ps_v4sf_maskz(__B, __C, __D, __A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusds_v4si_maskz
In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:139,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/include/QtCore/5.15.17/QtCore/private/../../../../../src/corelib/tools/qsimd_p.h:191,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/include/QtCore/5.15.17/QtCore/private/qsimd_p.h:1,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/src/corelib/codecs/qutfcodec.cpp:46:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h: At global scope:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h:33:32: error: attribute(target("avx512bf16")) is unknown
33 | #pragma GCC target("avx512bf16")
| ^
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h: In function ‘__m512bh _mm512_cvtne2ps_pbh(__m512, __m512)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h:50:20: error: ‘__builtin_ia32_cvtne2ps2bf16_v32hi’ was not declared in this scope; did you mean ‘__builtin_ia32_vpshldv_v32hi’?
50 | return (__m512bh)__builtin_ia32_cvtne2ps2bf16_v32hi(__A, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpshldv_v32hi
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h: In function ‘__m512bh _mm512_mask_cvtne2ps_pbh(__m512bh, __mmask32, __m512, __m512)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h:57:20: error: ‘__builtin_ia32_cvtne2ps2bf16_v32hi_mask’ was not declared in this scope; did you mean ‘__builtin_ia32_vpshldv_v32hi_mask’?
57 | return (__m512bh)__builtin_ia32_cvtne2ps2bf16_v32hi_mask(__C, __D, __A, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpshldv_v32hi_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h: In function ‘__m512bh _mm512_maskz_cvtne2ps_pbh(__mmask32, __m512, __m512)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h:64:20: error: ‘__builtin_ia32_cvtne2ps2bf16_v32hi_maskz’ was not declared in this scope; did you mean ‘__builtin_ia32_vpshldv_v32hi_maskz’?
64 | return (__m512bh)__builtin_ia32_cvtne2ps2bf16_v32hi_maskz(__B, __C, __A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpshldv_v32hi_maskz
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h: In function ‘__m256bh _mm512_cvtneps_pbh(__m512)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h:73:20: error: ‘__builtin_ia32_cvtneps2bf16_v16sf’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusd_v16si’?
73 | return (__m256bh)__builtin_ia32_cvtneps2bf16_v16sf(__A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusd_v16si
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h: In function ‘__m256bh _mm512_mask_cvtneps_pbh(__m256bh, __mmask16, __m512)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h:80:20: error: ‘__builtin_ia32_cvtneps2bf16_v16sf_mask’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusd_v16si_mask’?
80 | return (__m256bh)__builtin_ia32_cvtneps2bf16_v16sf_mask(__C, __A, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusd_v16si_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h: In function ‘__m256bh _mm512_maskz_cvtneps_pbh(__mmask16, __m512)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h:87:20: error: ‘__builtin_ia32_cvtneps2bf16_v16sf_maskz’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusd_v16si_maskz’?
87 | return (__m256bh)__builtin_ia32_cvtneps2bf16_v16sf_maskz(__B, __A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusd_v16si_maskz
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h: In function ‘__m512 _mm512_dpbf16_ps(__m512, __m512bh, __m512bh)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h:96:18: error: ‘__builtin_ia32_dpbf16ps_v16sf’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusds_v16si’?
96 | return (__m512)__builtin_ia32_dpbf16ps_v16sf(__A, __B, __C);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusds_v16si
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h: In function ‘__m512 _mm512_mask_dpbf16_ps(__m512, __mmask16, __m512bh, __m512bh)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h:103:18: error: ‘__builtin_ia32_dpbf16ps_v16sf_mask’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusds_v16si_mask’?
103 | return (__m512)__builtin_ia32_dpbf16ps_v16sf_mask(__A, __C, __D, __B);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusds_v16si_mask
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h: In function ‘__m512 _mm512_maskz_dpbf16_ps(__mmask16, __m512, __m512bh, __m512bh)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/avx512bf16intrin.h:110:18: error: ‘__builtin_ia32_dpbf16ps_v16sf_maskz’ was not declared in this scope; did you mean ‘__builtin_ia32_vpdpbusds_v16si_maskz’?
110 | return (__m512)__builtin_ia32_dpbf16ps_v16sf_maskz(__B, __C, __D, __A);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_vpdpbusds_v16si_maskz
In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:141,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/include/QtCore/5.15.17/QtCore/private/../../../../../src/corelib/tools/qsimd_p.h:191,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/include/QtCore/5.15.17/QtCore/private/qsimd_p.h:1,
from /home/zhangxiang1209/下载/qt-everywhere-src-5.15.17/qtbase/src/corelib/codecs/qutfcodec.cpp:46:
/usr/lib/gcc/x86_64-linux-gnu/10/include/enqcmdintrin.h: At global scope:
/usr/lib/gcc/x86_64-linux-gnu/10/include/enqcmdintrin.h:33:29: error: attribute(target("enqcmd")) is unknown
33 | #pragma GCC target ("enqcmd")
| ^
/usr/lib/gcc/x86_64-linux-gnu/10/include/enqcmdintrin.h: In function ‘int _enqcmd(void*, const void*)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/enqcmdintrin.h:41:10: error: ‘__builtin_ia32_enqcmd’ was not declared in this scope; did you mean ‘__builtin_ia32_xend’?
41 | return __builtin_ia32_enqcmd (__P, __Q);
| ^~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_xend
/usr/lib/gcc/x86_64-linux-gnu/10/include/enqcmdintrin.h: In function ‘int _enqcmds(void*, const void*)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/enqcmdintrin.h:48:10: error: ‘__builtin_ia32_enqcmds’ was not declared in this scope; did you mean ‘__builtin_ia32_emms’?
48 | return __builtin_ia32_enqcmds (__P, __Q);
| ^~~~~~~~~~~~~~~~~~~~~~
| __builtin_ia32_emms
make: *** [Makefile:383:qutfcodec.o] 错误 1
错误分析:该错误发生在编译器处理avx512vp2intersectintrin.h头文件时,表明当前编译环境未显式启用AVX-512 VP2INTERSECT指令集选项或该机器CPU不支持该指令集。
解决过程:首先验证该机器否支持该指令集,验证指令如下:
lscpu | grep avx512
若有输出,则当前CPU支持 avx512相关指令集,此时说明编译构建脚本程序或编译构建指令未显式的启用avx512相关指令集,相关编译器的启用avx512指令集的方法如下(构建脚本程序的修改不做细节阐述,如有需要自行百度):
(1)GCC/Clang编译器需添加-mavx512vp2intersect选项
(2)若使用Intel编译器,需添加-xCOMMON-AVX512或-xCORE-AVX512
若有输出,则当前CPU不支持 avx512相关指令集,则此时的解决方法主要有两种:
(1)下载未使用avx512指令集的低版本的待编译程序(此处为低版本的qt)【不推荐使用,因为当前时间为2025年,而avx512指令集在2011年intel酷睿2代芯片上就已经推出,若当前硬件不支持,则说明该机器也该报废了,若更改低版本的待编译程序,编译后的古老程序也不一定符合前的应用要求】;
(2)更换新机器搭建环境重新编译【推荐使用】。其中,若使用的机器为VM创建的虚拟机而非实体机,则可以更改虚拟机配置实现虚拟机CPU avx512指令集的支持,操作流程如下:①关闭虚拟机 ②编辑虚拟机设置 ③进入CPU选项 ④将CPU/MMU虚拟化修改为"硬件CPU和MMU模式" ⑤确保勾选"虚拟化Intel VT-x/EPT或AMD-V/RVI"选项。然后重启虚拟机重新编译即可。


被折叠的 条评论
为什么被折叠?



