Hi Michael Thanks for the hint, I did this (not yet pushed):
-#include <xmmintrin.h> - /* yes I know, the top of this file is quite ugly */ +define SIMDE_ENABLE_NATIVE_ALIASES +#include <simde/x86/sse.h> But I end up with the same error that I pasted earlier. Am I missing something in the hint? Please let me know. (I checked the code for xmmintrin.h and indeed the typedef should be included on the above diff simde patch - I've no idea why this doesn't.) On Mon, 7 Dec 2020 at 16:04, Michael Crusoe <michael.cru...@gmail.com> wrote: > Hey Nilesh, > > No problem for me when you ask for help! > > I suspect that > https://salsa.debian.org/med-team/scrappie/-/commit/a00691d910110a460ef5e61a6c74cc2cb0e1a626#5dc91bdd30262777c0556235b73413cd5865a144_0_31 > is the issue > You should add the regular simde includes here, so that v4sf typedef works > > define SIMDE_ENABLE_NATIVE_ALIASES#include <simde/x86/sse.h> > > > > On Mon, 7 Dec 2020 at 11:28, Nilesh Patra <npatra...@gmail.com> wrote: > >> Hi Michael and others, >> >> Scrappie looks like a candidate where we can use the simde trick. >> I tried doing a patch, and it works on amd64 machine, but not on an arm64 >> porter box :/ (with issues with __v4sf) >> >> And I'm not sure how to fix this, and hence this is a humble request to >> please take a look - and any help/hints would be really great. >> My patch is pushed to salsa[1] >> I'm also sorry if these pings are somehow irritating, since I need help >> admittedly. >> >> [1]: https://salsa.debian.org/med-team/scrappie >> >> Pasting the (relevant part of) failing arm64 log: >> >> make[1]: Entering directory '/home/nilesh/scrappie/scrappie' >> mkdir build >> cd build && \ >> cmake .. -DCMAKE_BUILD_TYPE=Release && \ >> make >> -- The C compiler identification is GNU 10.2.0 >> -- Detecting C compiler ABI info >> -- Detecting C compiler ABI info - done >> -- Check for working C compiler: /usr/bin/cc - skipped >> -- Detecting C compile features >> -- Detecting C compile features - done >> -- Performing Test HAS_OPENMP >> -- Performing Test HAS_OPENMP - Success >> -- Looking for hdf5.h >> -- Looking for hdf5.h - not found >> -- Looking for hdf5/serial/hdf5.h >> -- Looking for hdf5/serial/hdf5.h - found >> -- Configuring done >> -- Generating done >> -- Build files have been written to: /home/nilesh/scrappie/scrappie/build >> make[2]: Entering directory '/home/nilesh/scrappie/scrappie/build' >> make[2]: warning: jobserver unavailable: using -j1. Add '+' to parent >> make rule. >> make[3]: Entering directory '/home/nilesh/scrappie/scrappie/build' >> make[4]: Entering directory '/home/nilesh/scrappie/scrappie/build' >> Scanning dependencies of target scrappie_objects >> make[4]: Leaving directory '/home/nilesh/scrappie/scrappie/build' >> make[4]: Entering directory '/home/nilesh/scrappie/scrappie/build' >> [ 2%] Building C object CMakeFiles/scrappie_objects.dir/src/decode.c.o >> In file included from /usr/include/simde/x86/avx.h:27, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h: In function 'log_ps': >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:106:22: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 106 | x = _mm_max_ps(x, *(v4sf*)_ps_min_norm_pos); /* cut off >> denormalized stuff */ >> | ^~~~~~~~~~~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/avx.h:27, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:110:22: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 110 | x = _mm_and_ps(x, *(v4sf*)_ps_inv_mant_mask); >> | ^~~~~~~~~~~~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/sse3.h:30, >> from /usr/include/simde/x86/ssse3.h:30, >> from /usr/include/simde/x86/sse4.1.h:31, >> from /usr/include/simde/x86/sse4.2.h:31, >> from /usr/include/simde/x86/avx.h:31, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:113:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 113 | emm0 = _mm_sub_epi32(emm0, *(v4si*)_pi32_0x7f); >> | ^~~~~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/sse3.h:30, >> from /usr/include/simde/x86/ssse3.h:30, >> from /usr/include/simde/x86/sse4.1.h:31, >> from /usr/include/simde/x86/sse4.2.h:31, >> from /usr/include/simde/x86/avx.h:31, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h: In function 'exp_ps': >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:228:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 228 | emm0 = _mm_add_epi32(emm0, *(v4si*)_pi32_0x7f); >> | ^~~~~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/avx.h:27, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h: In function 'sin_ps': >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:281:22: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 281 | x = _mm_and_ps(x, *(v4sf*)_ps_inv_sign_mask); >> | ^~~~~~~~~~~~~~~~~~~~~~~~ >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:283:36: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 283 | sign_bit = _mm_and_ps(sign_bit, *(v4sf*)_ps_sign_mask); >> | ^~~~~~~~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/sse3.h:30, >> from /usr/include/simde/x86/ssse3.h:30, >> from /usr/include/simde/x86/sse4.1.h:31, >> from /usr/include/simde/x86/sse4.2.h:31, >> from /usr/include/simde/x86/avx.h:31, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:291:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 291 | emm2 = _mm_add_epi32(emm2, *(v4si*)_pi32_1); >> | ^~~~~~~~~~~~~~ >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:292:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 292 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_inv1); >> | ^~~~~~~~~~~~~~~~~ >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:296:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 296 | emm0 = _mm_and_si128(emm2, *(v4si*)_pi32_4); >> | ^~~~~~~~~~~~~~ >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:304:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 304 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_2); >> | ^~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/avx.h:27, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h: In function 'cos_ps': >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:364:22: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 364 | x = _mm_and_ps(x, *(v4sf*)_ps_inv_sign_mask); >> | ^~~~~~~~~~~~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/sse3.h:30, >> from /usr/include/simde/x86/ssse3.h:30, >> from /usr/include/simde/x86/sse4.1.h:31, >> from /usr/include/simde/x86/sse4.2.h:31, >> from /usr/include/simde/x86/avx.h:31, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:372:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 372 | emm2 = _mm_add_epi32(emm2, *(v4si*)_pi32_1); >> | ^~~~~~~~~~~~~~ >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:373:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 373 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_inv1); >> | ^~~~~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/sse3.h:30, >> from /usr/include/simde/x86/ssse3.h:30, >> from /usr/include/simde/x86/sse4.1.h:31, >> from /usr/include/simde/x86/sse4.2.h:31, >> from /usr/include/simde/x86/avx.h:31, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:376:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 376 | emm2 = _mm_sub_epi32(emm2, *(v4si*)_pi32_2); >> | ^~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/sse3.h:30, >> from /usr/include/simde/x86/ssse3.h:30, >> from /usr/include/simde/x86/sse4.1.h:31, >> from /usr/include/simde/x86/sse4.2.h:31, >> from /usr/include/simde/x86/avx.h:31, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:379:34: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 379 | emm0 = _mm_andnot_si128(emm2, *(v4si*)_pi32_4); >> | ^~~~~~~~~~~~~~ >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:382:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 382 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_2); >> | ^~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/avx.h:27, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h: In function 'sincos_ps': >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:444:22: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 444 | x = _mm_and_ps(x, *(v4sf*)_ps_inv_sign_mask); >> | ^~~~~~~~~~~~~~~~~~~~~~~~ >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:446:44: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 446 | sign_bit_sin = _mm_and_ps(sign_bit_sin, *(v4sf*)_ps_sign_mask); >> | ^~~~~~~~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/sse3.h:30, >> from /usr/include/simde/x86/ssse3.h:30, >> from /usr/include/simde/x86/sse4.1.h:31, >> from /usr/include/simde/x86/sse4.2.h:31, >> from /usr/include/simde/x86/avx.h:31, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:455:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 455 | emm2 = _mm_add_epi32(emm2, *(v4si*)_pi32_1); >> | ^~~~~~~~~~~~~~ >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:456:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 456 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_inv1); >> | ^~~~~~~~~~~~~~~~~ >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:462:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 462 | emm0 = _mm_and_si128(emm2, *(v4si*)_pi32_4); >> | ^~~~~~~~~~~~~~ >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:467:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 467 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_2); >> | ^~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/sse3.h:30, >> from /usr/include/simde/x86/ssse3.h:30, >> from /usr/include/simde/x86/sse4.1.h:31, >> from /usr/include/simde/x86/sse4.2.h:31, >> from /usr/include/simde/x86/avx.h:31, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:483:31: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 483 | emm4 = _mm_sub_epi32(emm4, *(v4si*)_pi32_2); >> | ^~~~~~~~~~~~~~ >> In file included from /usr/include/simde/x86/sse3.h:30, >> from /usr/include/simde/x86/ssse3.h:30, >> from /usr/include/simde/x86/sse4.1.h:31, >> from /usr/include/simde/x86/sse4.2.h:31, >> from /usr/include/simde/x86/avx.h:31, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:484:34: warning: >> dereferencing type-punned pointer will break strict-aliasing rules >> [-Wstrict-aliasing] >> 484 | emm4 = _mm_andnot_si128(emm4, *(v4si*)_pi32_4); >> | ^~~~~~~~~~~~~~ >> In file included from /home/nilesh/scrappie/scrappie/src/decode.c:5: >> /home/nilesh/scrappie/scrappie/src/util.h: In function 'expfv': >> /home/nilesh/scrappie/scrappie/src/util.h:172:5: error: unknown type name >> '__v4sf'; did you mean 'v4sf'? >> 172 | __v4sf y = (__v4sf) x; >> | ^~~~~~ >> | v4sf >> /home/nilesh/scrappie/scrappie/src/util.h:172:17: error: '__v4sf' >> undeclared (first use in this function); did you mean 'v4sf'? >> 172 | __v4sf y = (__v4sf) x; >> | ^~~~~~ >> | v4sf >> /home/nilesh/scrappie/scrappie/src/util.h:172:17: note: each undeclared >> identifier is reported only once for each function it appears in >> /home/nilesh/scrappie/scrappie/src/util.h:172:25: error: expected ',' or >> ';' before 'x' >> 172 | __v4sf y = (__v4sf) x; >> | ^ >> /home/nilesh/scrappie/scrappie/src/util.h:173:28: error: incompatible >> type for argument 1 of 'exp_ps' >> 173 | return (__m128) exp_ps(y); >> | ^ >> | | >> | int >> In file included from /home/nilesh/scrappie/scrappie/src/util.h:9, >> from /home/nilesh/scrappie/scrappie/src/decode.c:5: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:183:67: note: expected >> 'v4sf' {aka 'float32x4_t'} but argument is of type 'int' >> 183 | static inline __attribute__((__always_inline__)) v4sf exp_ps(v4sf >> x) { >> | >> ~~~~~^ >> In file included from /home/nilesh/scrappie/scrappie/src/decode.c:5: >> /home/nilesh/scrappie/scrappie/src/util.h: In function 'logfv': >> /home/nilesh/scrappie/scrappie/src/util.h:177:5: error: unknown type name >> '__v4sf'; did you mean 'v4sf'? >> 177 | __v4sf y = (__v4sf) x; >> | ^~~~~~ >> | v4sf >> /home/nilesh/scrappie/scrappie/src/util.h:177:17: error: '__v4sf' >> undeclared (first use in this function); did you mean 'v4sf'? >> 177 | __v4sf y = (__v4sf) x; >> | ^~~~~~ >> | v4sf >> /home/nilesh/scrappie/scrappie/src/util.h:177:25: error: expected ',' or >> ';' before 'x' >> 177 | __v4sf y = (__v4sf) x; >> | ^ >> /home/nilesh/scrappie/scrappie/src/util.h:178:28: error: incompatible >> type for argument 1 of 'log_ps' >> 178 | return (__m128) log_ps(y); >> | ^ >> | | >> | int >> In file included from /home/nilesh/scrappie/scrappie/src/util.h:9, >> from /home/nilesh/scrappie/scrappie/src/decode.c:5: >> /home/nilesh/scrappie/scrappie/src/sse_mathfun.h:101:67: note: expected >> 'v4sf' {aka 'float32x4_t'} but argument is of type 'int' >> 101 | static inline v4sf __attribute__((__always_inline__)) log_ps(v4sf >> x) { >> | >> ~~~~~^ >> In file included from /home/nilesh/scrappie/scrappie/src/decode.c:5: >> /home/nilesh/scrappie/scrappie/src/util.h: In function 'fast_expfv': >> /home/nilesh/scrappie/scrappie/src/util.h:205:32: error: '__v4sf' >> undeclared (first use in this function); did you mean 'v4sf'? >> 205 | const __m128 a = (__m128) (__v4sf) { _A, _A, _A, _A }; >> | ^~~~~~ >> | v4sf >> /home/nilesh/scrappie/scrappie/src/util.h:205:40: error: expected ',' or >> ';' before '{' token >> 205 | const __m128 a = (__m128) (__v4sf) { _A, _A, _A, _A }; >> | ^ >> /home/nilesh/scrappie/scrappie/src/util.h:206:40: error: expected ',' or >> ';' before '{' token >> 206 | const __m128 b = (__m128) (__v4sf) { _B, _B, _B, _B }; >> | ^ >> /home/nilesh/scrappie/scrappie/src/util.h:207:45: error: expected ',' or >> ';' before '{' token >> 207 | const __m128 _bound = (__m128) (__v4sf) { _BOUND, _BOUND, >> _BOUND, _BOUND }; >> | ^ >> /home/nilesh/scrappie/scrappie/src/util.h: In function 'fast_logfv': >> /home/nilesh/scrappie/scrappie/src/util.h:217:32: error: '__v4sf' >> undeclared (first use in this function); did you mean 'v4sf'? >> 217 | const __m128 a = (__m128) (__v4sf) { _Alogfv, _Alogfv, >> _Alogfv, _Alogfv }; >> | ^~~~~~ >> | v4sf >> /home/nilesh/scrappie/scrappie/src/util.h:217:40: error: expected ',' or >> ';' before '{' token >> 217 | const __m128 a = (__m128) (__v4sf) { _Alogfv, _Alogfv, >> _Alogfv, _Alogfv }; >> | ^ >> /home/nilesh/scrappie/scrappie/src/util.h:218:40: error: expected ',' or >> ';' before '{' token >> 218 | const __m128 b = (__m128) (__v4sf) { _Blogfv, _Blogfv, >> _Blogfv, _Blogfv }; >> | ^ >> /home/nilesh/scrappie/scrappie/src/decode.c: At top level: >> /home/nilesh/scrappie/scrappie/src/decode.c:11:6: error: #error >> "Compilation of function decode_transducer requires a processor that >> supports at least SSE2" >> 11 | # error "Compilation of function decode_transducer requires a >> processor that supports at least SSE2" >> | ^~~~~ >> In file included from /usr/include/simde/x86/sse4.2.h:31, >> from /usr/include/simde/x86/avx.h:31, >> from >> /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6, >> from /home/nilesh/scrappie/scrappie/src/decode.h:5, >> from /home/nilesh/scrappie/scrappie/src/decode.c:3: >> /home/nilesh/scrappie/scrappie/src/decode.c:25:74: error: redefinition of >> 'simde_mm_mullo_epi32' >> 25 | static inline __m128i __attribute__((__gnu_inline__, >> __always_inline__)) _mm_mullo_epi32(const __m128i x, const __m128i y) { >> >> | >> ^~~~~~~~~~~~~~~ >> /usr/include/simde/x86/sse4.1.h:1761:1: note: previous definition of >> 'simde_mm_mullo_epi32' was here >> 1761 | simde_mm_mullo_epi32 (simde__m128i a, simde__m128i b) { >> | ^~~~~~~~~~~~~~~~~~~~ >> make[4]: *** [CMakeFiles/scrappie_objects.dir/build.make:82: >> CMakeFiles/scrappie_objects.dir/src/decode.c.o] Error 1 >> make[4]: Leaving directory '/home/nilesh/scrappie/scrappie/build' >> make[3]: *** [CMakeFiles/Makefile2:104: >> CMakeFiles/scrappie_objects.dir/all] Error 2 >> make[3]: Leaving directory '/home/nilesh/scrappie/scrappie/build' >> make[2]: *** [Makefile:182: all] Error 2 >> make[2]: Leaving directory '/home/nilesh/scrappie/scrappie/build' >> make[1]: *** [Makefile:21: build/scrappie] Error 2 >> make[1]: Leaving directory '/home/nilesh/scrappie/scrappie' >> dh_auto_build: error: make -j4 "INSTALL=install --strip-program=true" >> returned exit code 2 >> make: *** [debian/rules:11: binary] Error 2 >> >> > > -- > Michael R. Crusoe > Co-founder & Lead, > Common Workflow Language project <http://www.commonwl.org/> > https://orcid.org/0000-0002-2961-9670 > m...@commonwl.org >