zlib fails to build for pc-x86_64 with default compiler
bug
**Describe the bug**
When I tried to compile AROS for pc-x86_64 without specifying a GCC version, zlib compilation failed. This was using the master branch as of 2025-10-15. I believe the Git ID was aa5a9c68e7. A subsequent build with a configure line copied from a nightly build log succeeded in compiling zlib.
**To Reproduce**
This is my configure line:
../src/configure --target=pc-x86_64 --with-portssources=/home/neil/AROS/ports-sources
**Expected behaviour**
zlib builds. If the default compiler version is no longer supported, the default should be revised.
**Additional context**
This is the lead up to the compilation failure:
Compiling bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c
Compile failed: /home/neil/AROS/aros-development-team1/pc-x86_64/bin/linux-x86_64/tools/crosstools/x86_64-aros-gcc --sysroot /home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/AROS/Developer -iquote /home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/ -iquote /home/neil/AROS/aros-development-team1/pc-x86_64/workbench/libs/z -iquote /home/neil/AROS/aros-development-team1/src/workbench/libs/z -iquote . -m64 -mcmodel=large -mno-red-zone -mno-ms-bitfields -O2 -fno-asynchronous-unwind-tables -fno-omit-frame-pointer -fno-common -Wno-pointer-sign -Wno-parentheses -idirafter /home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib -DAROS_BUILD_TYPE=AROS_BUILD_TYPE_PERSONAL -DAROS_USE_LOGRES -D_XOPEN_SOURCE=600 -DSTDC -DAMIGA -DINFLATE_CHUNK_SIMD_SSE2 -DADLER32_SIMD_SSSE3 -DINFLATE_CHUNK_READ_64LE -DDEFLATE_CHUNK_WRITE_64LE -DCRC32_SIMD_SSE42_PCLMUL -DDEFLATE_SLIDE_HASH_SSE2 -DX86_NOT_WINDOWS -DCRC32_SIMD_AVX512_PCLMUL -DNO_STRERROR -DNDEBUG -D__SRCFILENAME__="bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c" -c /home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c -o /home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/gen/workbench/libs/z/static/crc32_512_simd.o
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:12:1: error: attribute(target("vpclmulqdq")) is unknown
ZLIB_PUSH_X86_TARGETS("avx512f,pclmul,vpclmulqdq")
^~~~~~~~~~~~~~~~~~~~~
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c: In function 'crc32_avx512_simd_':
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:76:14: warning: implicit declaration of function '_mm512_clmulepi64_epi128' [-Wimplicit-function-declaration]
x5 = _mm512_clmulepi64_epi128(x1, x0, 0x00);
^~~~~~~~~~~~~~~~~~~~~~~~
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:76:12: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x5 = _mm512_clmulepi64_epi128(x1, x0, 0x00);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:77:12: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x6 = _mm512_clmulepi64_epi128(x2, x0, 0x00);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:78:12: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x7 = _mm512_clmulepi64_epi128(x3, x0, 0x00);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:79:12: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x8 = _mm512_clmulepi64_epi128(x4, x0, 0x00);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:82:12: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x1 = _mm512_clmulepi64_epi128(x1, x0, 0x11);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:83:12: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x2 = _mm512_clmulepi64_epi128(x2, x0, 0x11);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:84:12: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x3 = _mm512_clmulepi64_epi128(x3, x0, 0x11);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:85:12: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x4 = _mm512_clmulepi64_epi128(x4, x0, 0x11);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:111:8: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x5 = _mm512_clmulepi64_epi128(x1, x0, 0x00);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:112:8: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x1 = _mm512_clmulepi64_epi128(x1, x0, 0x11);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:116:8: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x5 = _mm512_clmulepi64_epi128(x1, x0, 0x00);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:117:8: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x1 = _mm512_clmulepi64_epi128(x1, x0, 0x11);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:121:8: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x5 = _mm512_clmulepi64_epi128(x1, x0, 0x00);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:122:8: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x1 = _mm512_clmulepi64_epi128(x1, x0, 0x11);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:133:12: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x5 = _mm512_clmulepi64_epi128(x1, x0, 0x00);
^
/home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/Ports/zlib/zlib/crc32_512_simd.c:134:12: error: incompatible types when assigning to type '__m512i {aka __vector(8) long long int}' from type 'int'
x1 = _mm512_clmulepi64_epi128(x1, x0, 0x11);
^
make[1]: *** [mmakefile:2544: /home/neil/AROS/aros-development-team1/pc-x86_64/bin/pc-x86_64/gen/workbench/libs/z/static/crc32_512_simd.o] Error 1
[MMAKE] make --no-print-directory TOP=/home/neil/AROS/aros-development-team1/pc-x86_64 SRCDIR=/home/neil/AROS/aros-development-team1/src CURDIR=workbench/libs/z TARGET=linklibs-z-static --file=mmakefile linklibs-z-static failed: 512
[MMAKE] Error: Error while running make in workbench/libs/z: No such file or directory
make: *** [Makefile:128: all] Error 10
2 条评论