Build problem: rabin_dedup.c:908 -- unknown type name ‘__m128i’
Closed this issue · 2 comments
epitron commented
Hi there,
pcompress looks amazing! Thanks for all your hard work.
I'm having a problem building it on Arch, however.
This happens:
gcc -c -O3 -fopenmp -mssse3 -ftree-vectorize -I. -I./lzma -I./lzfx -I./lz4 -I./rabin -I./bsdiff -DNODEFAULT_PROPS -DFILE_OFFSET_BITS=64 -D_REENTRANT -D__USE_SSE_INTRIN__ -D_LZMA_PROB32 -I./lzp -I./crypto/skein -I./utils -I./crypto/sha2 -I./crypto/scrypt -I./crypto/aes -I./crypto -I./rabin/global -I./crypto/keccak -I./transpose -I./crypto/blake2 -I./crypto/xsalsa20 -pedantic -Wall -std=gnu99 -fno-strict-aliasing -Wno-unused-but-set-variable -Wno-enum-compare -D__HASH_COMPATIBILITY_ -DNDEBUG rabin/rabin_dedup.c -o rabin/rabin_dedup.o
rabin/rabin_dedup.c: In function ‘dedupe_compress’:
rabin/rabin_dedup.c:908:8: error: unknown type name ‘__m128i’
__m128i s;
^
rabin/rabin_dedup.c:919:9: warning: implicit declaration of function ‘_mm_loadu_si128’ [-Wimplicit-function-declaration]
s = _mm_loadu_si128((__m128i *)sc);
^
rabin/rabin_dedup.c:919:30: error: ‘__m128i’ undeclared (first use in this function)
s = _mm_loadu_si128((__m128i *)sc);
^
rabin/rabin_dedup.c:919:30: note: each undeclared identifier is reported only once for each function it appears in
rabin/rabin_dedup.c:919:39: error: expected expression before ‘)’ token
s = _mm_loadu_si128((__m128i *)sc);
^
rabin/rabin_dedup.c:920:9: warning: implicit declaration of function ‘_mm_storeu_si128’ [-Wimplicit-function-declaration]
_mm_storeu_si128((__m128i *)tgt, s);
^
rabin/rabin_dedup.c:920:36: error: expected expression before ‘)’ token
_mm_storeu_si128((__m128i *)tgt, s);
^
make: *** [rabin/rabin_dedup.o] Error 1
Any ideas?
moinakg commented
There was a bug in not properly handling non-SSE4 CPUs. Can you please checkout the latest git and rebuild.
epitron commented
You bet I can!
SUCCESS! Thanks!