Source: clickhouse
Version: 18.16.1+ds-5
Severity: serious
Tags: ftbfs
Hi,
clickhouse fails to build from source in bullseye/sid:
https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/clickhouse.html
/build/1st/clickhouse-18.16.1+ds/dbms/src/Functions/intDiv.cpp:55:75: error: no
match for 'operator/' (operand types are '__m128i' {aka '__vector(2) long long
int'} and 'libdivide::divider')
55 | _mm_loadu_si128(reinterpret_cast(a_pos)) / divider);
|
~~^
In file included from
/build/1st/clickhouse-18.16.1+ds/dbms/src/Functions/intDiv.cpp:9:
/usr/include/libdivide.h:2039:3: note: candidate: 'template
T libdivide::operator/(T, const libdivide::divider&)'
2039 | T operator/(T n, const divider& div) {
| ^~~~
/usr/include/libdivide.h:2039:3: note: template argument
deduction/substitution failed:
/build/1st/clickhouse-18.16.1+ds/dbms/src/Functions/intDiv.cpp:55:75: note:
deduced conflicting types for parameter 'T' ('__vector(2) long long int' and
'unsigned int')
55 | _mm_loadu_si128(reinterpret_cast(a_pos)) / divider);
|
~~^
I was able to reproduce this on my own system as well.
Would be great if you could fix this soon as it's blocking the poco
transition. One simple workaround would be to remove the #if __SSE2__
block (line 48-60) in intDiv.cpp as it's only a SSE2 optimization and
the generic case is below.
Cheers Jochen
-- System Information:
Debian Release: bullseye/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 5.4.0-3-amd64 (SMP w/8 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8),
LANGUAGE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled