animetosho / par2cmdline-turbo

par2cmdline × ParPar: speed focused par2cmdline fork
http://parchive.sourceforge.net
GNU General Public License v2.0
102 stars 7 forks source link

"error: implicit declaration of function 'posix_memalign'" with gcc 14.2.0 on RISCV64. With workaround: -std=gnu99 instead of -std=c99 in Makefile #34

Closed sanderjo closed 3 months ago

sanderjo commented 3 months ago

with gcc 14.2.0 on Alpine Linux docker on RISCV64, I get the error below.

It does not happen with the plain par2cmdline (also with gcc 14), so reporting here. I hope that's correct?

Without any knowledge, just some googling (https://github.com/acados/acados/issues/1125#issuecomment-2184187759) this workaround seems to work:

sed -i -e 's/c99/gnu99/g' Makefile ... and then makeworks?

Faulty make:

mv -f parpar/hasher/.deps/libparpar_hasher_a-hasher_md5crc.Tpo parpar/hasher/.deps/libparpar_hasher_a-hasher_md5crc.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_a-tables.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_a-tables.Tpo -c -o parpar/hasher/libparpar_hasher_a-tables.o `test -f 'parpar/hasher/tables.cpp' || echo './'`parpar/hasher/tables.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_a-tables.Tpo parpar/hasher/.deps/libparpar_hasher_a-tables.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c99  -g -O2 -MT parpar/hasher/libparpar_hasher_a-md5-final.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_a-md5-final.Tpo -c -o parpar/hasher/libparpar_hasher_a-md5-final.o `test -f 'parpar/hasher/md5-final.c' || echo './'`parpar/hasher/md5-final.c
In file included from parpar/hasher/md5-scalar.h:3,
                 from parpar/hasher/md5-final.c:2:
parpar/hasher/md5-base.h: In function 'md5_alloc_scalar':
parpar/hasher/../src/platform.h:303:49: error: implicit declaration of function 'posix_memalign' [-Wimplicit-function-declaration]
  303 |         #define ALIGN_ALLOC(buf, len, align) if(posix_memalign((void**)&(buf), align < sizeof(void*) ? sizeof(void*) : align, (len))) (buf) = NULL
      |                                                 ^~~~~~~~~~~~~~
parpar/hasher/md5-base.h:315:9: note: in expansion of macro 'ALIGN_ALLOC'
  315 |         ALIGN_ALLOC(ret, sizeof(word_t)*words, sizeof(word_t) < sizeof(void*) ? sizeof(void*) : sizeof(word_t));
      |         ^~~~~~~~~~~
make[1]: *** [Makefile:2831: parpar/hasher/libparpar_hasher_a-md5-final.o] Error 1
make[1]: Leaving directory '/tmp/poging2-par2cmdline-turbo.git'
make: *** [Makefile:1353: all] Error 2
/tmp/poging2-par2cmdline-turbo.git # 
/tmp/poging2-par2cmdline-turbo.git # gcc --version
gcc (Alpine 14.2.0) 14.2.0
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
sanderjo commented 3 months ago

The workaround-without-knowledge in more detail:

/tmp/poging2-par2cmdline-turbo.git # cat Makefile | grep c99
libparpar_gf16_a_CFLAGS = -std=c99 $(CFLAGS_POSIX_SOURCE) -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE
libparpar_hasher_a_CFLAGS = -std=c99 $(CFLAGS_POSIX_SOURCE)

/tmp/poging2-par2cmdline-turbo.git # sed -i -e 's/c99/gnu99/g' Makefile 
/tmp/poging2-par2cmdline-turbo.git # 

/tmp/poging2-par2cmdline-turbo.git # cat Makefile | grep gnu99
libparpar_gf16_a_CFLAGS = -std=gnu99 $(CFLAGS_POSIX_SOURCE) -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE
libparpar_hasher_a_CFLAGS = -std=gnu99 $(CFLAGS_POSIX_SOURCE)

and then the make works, ... with a par2 with rvv vector commands!

/tmp/poging2-par2cmdline-turbo.git # objdump -d par2 | awk '{ print $3 }' | sort | uniq -c | grep " v"
     58 vadd.vv
     82 vand.vi
     12 vand.vv
     29 vl1r.v
     50 vl1re16.v
    493 vle8.v
     61 vlseg2e8.v
     58 vmsle.vi
      6 vmv.v.i
    135 vmv.v.x
     43 vmv1r.v
    164 vnsrl.wi
    123 vor.vv
    451 vrgather.vv
     75 vs1r.v
      4 vse16.v
     96 vse8.v
    142 vsetivli
    288 vsetvli
    123 vslide1up.vx
    123 vslideup.vi
    246 vsll.vi
     12 vsra.vi
    328 vsrl.vi
     21 vsseg2e8.v
   1044 vxor.vv
     46 vxor.vx
sanderjo commented 3 months ago

That file parpar/hasher/../src/platform.h is "parpar", and not in the original par2cmdline, so unique to par2cmdline-turbo, so correct I report it here?

/tmp/poging2-par2cmdline-turbo.git # ls -al parpar/hasher/../src/platform.h
-rw-r--r--    1 root     root         10713 Aug 15 06:43 parpar/hasher/../src/platform.h

/tmp/poging2-par2cmdline-turbo.git # grep posix_memalign parpar/hasher/../src/platform.h
    #define ALIGN_ALLOC(buf, len, align) if(posix_memalign((void**)&(buf), align < sizeof(void*) ? sizeof(void*) : align, (len))) (buf) = NULL
sanderjo commented 3 months ago

FWIW: no problem with gcc 13.2.0: make runs withouts errors with the standard Makefile, and generates a par2 binary. But also no rvv vector instructions inside the resulting par2 (which is logical; gcc 14 is needed for that)

That's why I put "gcc 14.2.0" in the issue report.

No error in the parpar/hasher/../src/platform.h part, but a warning. Maybe with going from gcc 13 to gcc 14, the Warning has been raised to an Error?

In file included from parpar/hasher/md5-scalar.h:3,
                 from parpar/hasher/md5-final.c:2:
parpar/hasher/md5-base.h: In function ‘md5_alloc_scalar’:
parpar/hasher/../src/platform.h:303:49: warning: implicit declaration of function ‘posix_memalign’ [-Wimplicit-function-declaration]
  303 |         #define ALIGN_ALLOC(buf, len, align) if(posix_memalign((void**)&(buf), align < sizeof(void*) ? sizeof(void*) : align, (len))) (buf) = NULL
      |                                                 ^~~~~~~~~~~~~~
parpar/hasher/md5-base.h:315:9: note: in expansion of macro ‘ALIGN_ALLOC’
  315 |         ALIGN_ALLOC(ret, sizeof(word_t)*words, sizeof(word_t) < sizeof(void*) ? sizeof(void*) : sizeof(word_t));
      |         ^~~~~~~~~~~
sanderjo commented 3 months ago

sander@k1:~/git/par2cmdline-turbo$ gcc --version
gcc (Ubuntu 13.2.0-4ubuntu3-bb2) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

sander@k1:~/git/par2cmdline-turbo$ cat Makefile | grep std | grep 99
libparpar_gf16_a_CFLAGS = -std=c99 $(CFLAGS_POSIX_SOURCE) -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE
libparpar_hasher_a_CFLAGS = -std=c99 $(CFLAGS_POSIX_SOURCE)

sander@k1:~/git/par2cmdline-turbo$ make
make  all-am
make[1]: Entering directory '/home/sander/git/par2cmdline-turbo'
depbase=`echo src/par2cmdline.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2cmdline.o -MD -MP -MF $depbase.Tpo -c -o src/par2cmdline.o src/par2cmdline.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/commandline.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/commandline.o -MD -MP -MF $depbase.Tpo -c -o src/commandline.o src/commandline.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/crc.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/crc.o -MD -MP -MF $depbase.Tpo -c -o src/crc.o src/crc.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/creatorpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/creatorpacket.o -MD -MP -MF $depbase.Tpo -c -o src/creatorpacket.o src/creatorpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/criticalpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/criticalpacket.o -MD -MP -MF $depbase.Tpo -c -o src/criticalpacket.o src/criticalpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/datablock.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/datablock.o -MD -MP -MF $depbase.Tpo -c -o src/datablock.o src/datablock.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/descriptionpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/descriptionpacket.o -MD -MP -MF $depbase.Tpo -c -o src/descriptionpacket.o src/descriptionpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/diskfile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/diskfile.o -MD -MP -MF $depbase.Tpo -c -o src/diskfile.o src/diskfile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/filechecksummer.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/filechecksummer.o -MD -MP -MF $depbase.Tpo -c -o src/filechecksummer.o src/filechecksummer.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/galois.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/galois.o -MD -MP -MF $depbase.Tpo -c -o src/galois.o src/galois.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/mainpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/mainpacket.o -MD -MP -MF $depbase.Tpo -c -o src/mainpacket.o src/mainpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/md5.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/md5.o -MD -MP -MF $depbase.Tpo -c -o src/md5.o src/md5.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par1fileformat.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par1fileformat.o -MD -MP -MF $depbase.Tpo -c -o src/par1fileformat.o src/par1fileformat.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par1repairer.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par1repairer.o -MD -MP -MF $depbase.Tpo -c -o src/par1repairer.o src/par1repairer.cpp &&\
mv -f $depbase.Tpo $depbase.Po
src/par1repairer.cpp: In member function ‘bool Par1Repairer::LoadRecoveryFile(std::string)’:
src/par1repairer.cpp:517:8: warning: unused variable ‘success’ [-Wunused-variable]
  517 |   bool success = diskfilemap.Insert(diskfile);
      |        ^~~~~~~
src/par1repairer.cpp: In member function ‘bool Par1Repairer::VerifySourceFiles()’:
src/par1repairer.cpp:639:14: warning: unused variable ‘success’ [-Wunused-variable]
  639 |         bool success = diskfilemap.Insert(diskfile);
      |              ^~~~~~~
src/par1repairer.cpp: In member function ‘bool Par1Repairer::VerifyExtraFiles(const std::vector<std::__cxx11::basic_string<char> >&)’:
src/par1repairer.cpp:720:14: warning: unused variable ‘success’ [-Wunused-variable]
  720 |         bool success = diskfilemap.Insert(diskfile);
      |              ^~~~~~~
src/par1repairer.cpp: In member function ‘bool Par1Repairer::RenameTargetFiles()’:
src/par1repairer.cpp:1072:12: warning: unused variable ‘success’ [-Wunused-variable]
 1072 |       bool success = diskfilemap.Insert(targetfile);
      |            ^~~~~~~
src/par1repairer.cpp:1100:12: warning: unused variable ‘success’ [-Wunused-variable]
 1100 |       bool success = diskfilemap.Insert(targetfile);
      |            ^~~~~~~
src/par1repairer.cpp: In member function ‘bool Par1Repairer::CreateTargetFiles()’:
src/par1repairer.cpp:1147:12: warning: unused variable ‘success’ [-Wunused-variable]
 1147 |       bool success = diskfilemap.Insert(targetfile);
      |            ^~~~~~~
In file included from src/par1repairer.h:24,
                 from src/libpar2internal.h:248,
                 from src/par1repairer.cpp:21:
src/reedsolomon.h: In instantiation of ‘bool ReedSolomon<g>::Compute(NoiseLevel, std::ostream&, std::ostream&) [with g = Galois<8, 285, unsigned char>; std::ostream = std::basic_ostream<char>]’:
src/par1repairer.cpp:1259:28:   required from here
src/reedsolomon.h:263:9: warning: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘ReedSolomon<Galois<8, 285, unsigned char> >::G’ {aka ‘class Galois<8, 285, unsigned char>’} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
  263 |   memset(leftmatrix, 0, outcount * incount * sizeof(G));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/libpar2internal.h:221:
src/galois.h:57:7: note: ‘ReedSolomon<Galois<8, 285, unsigned char> >::G’ {aka ‘class Galois<8, 285, unsigned char>’} declared here
   57 | class Galois
      |       ^~~~~~
src/reedsolomon.h:271:11: warning: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘ReedSolomon<Galois<8, 285, unsigned char> >::G’ {aka ‘class Galois<8, 285, unsigned char>’} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
  271 |     memset(rightmatrix, 0, outcount *outcount * sizeof(G));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/galois.h:57:7: note: ‘ReedSolomon<Galois<8, 285, unsigned char> >::G’ {aka ‘class Galois<8, 285, unsigned char>’} declared here
   57 | class Galois
      |       ^~~~~~
depbase=`echo src/par1repairersourcefile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par1repairersourcefile.o -MD -MP -MF $depbase.Tpo -c -o src/par1repairersourcefile.o src/par1repairersourcefile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2creator.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2creator.o -MD -MP -MF $depbase.Tpo -c -o src/par2creator.o src/par2creator.cpp &&\
depbase=`echo src/par2creatorsourcefile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2creatorsourcefile.o -MD -MP -MF $depbase.Tpo -c -o src/par2creatorsourcefile.o src/par2creatorsourcefile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2fileformat.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2fileformat.o -MD -MP -MF $depbase.Tpo -c -o src/par2fileformat.o src/par2fileformat.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2repairer.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2repairer.o -MD -MP -MF $depbase.Tpo -c -o src/par2repairer.o src/par2repairer.cpp &&\
mv -f $depbase.Tpo $depbase.Po
src/par2repairer.cpp: In member function ‘bool Par2Repairer::LoadPacketsFromFile(std::string)’:
src/par2repairer.cpp:589:10: warning: unused variable ‘success’ [-Wunused-variable]
  589 |     bool success = diskFileMap.Insert(diskfile);
      |          ^~~~~~~
src/par2repairer.cpp: In lambda function:
src/par2repairer.cpp:1308:14: warning: unused variable ‘success’ [-Wunused-variable]
 1308 |         bool success = diskFileMap.Insert(diskfile);
      |              ^~~~~~~
src/par2repairer.cpp: In lambda function:
src/par2repairer.cpp:1381:16: warning: unused variable ‘success’ [-Wunused-variable]
 1381 |           bool success = diskFileMap.Insert(diskfile);
      |                ^~~~~~~
src/par2repairer.cpp: In member function ‘bool Par2Repairer::RenameTargetFiles()’:
src/par2repairer.cpp:2207:12: warning: unused variable ‘success’ [-Wunused-variable]
 2207 |       bool success = diskFileMap.Insert(targetfile);
      |            ^~~~~~~
src/par2repairer.cpp:2239:12: warning: unused variable ‘success’ [-Wunused-variable]
 2239 |       bool success = diskFileMap.Insert(targetfile);
      |            ^~~~~~~
src/par2repairer.cpp: In member function ‘bool Par2Repairer::CreateTargetFiles()’:
src/par2repairer.cpp:2288:12: warning: unused variable ‘success’ [-Wunused-variable]
 2288 |       bool success = diskFileMap.Insert(targetfile);
      |            ^~~~~~~
depbase=`echo src/par2repairersourcefile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2repairersourcefile.o -MD -MP -MF $depbase.Tpo -c -o src/par2repairersourcefile.o src/par2repairersourcefile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/recoverypacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/recoverypacket.o -MD -MP -MF $depbase.Tpo -c -o src/recoverypacket.o src/recoverypacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/reedsolomon.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/reedsolomon.o -MD -MP -MF $depbase.Tpo -c -o src/reedsolomon.o src/reedsolomon.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/verificationhashtable.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/verificationhashtable.o -MD -MP -MF $depbase.Tpo -c -o src/verificationhashtable.o src/verificationhashtable.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/verificationpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/verificationpacket.o -MD -MP -MF $depbase.Tpo -c -o src/verificationpacket.o src/verificationpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/libpar2.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/libpar2.o -MD -MP -MF $depbase.Tpo -c -o src/libpar2.o src/libpar2.cpp &&\
mv -f $depbase.Tpo $depbase.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-controller.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-controller.Tpo -c -o parpar/gf16/libparpar_gf16_a-controller.o `test -f 'parpar/gf16/controller.cpp' || echo './'`parpar/gf16/controller.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-controller.Tpo parpar/gf16/.deps/libparpar_gf16_a-controller.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-controller_cpu.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-controller_cpu.Tpo -c -o parpar/gf16/libparpar_gf16_a-controller_cpu.o `test -f 'parpar/gf16/controller_cpu.cpp' || echo './'`parpar/gf16/controller_cpu.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-controller_cpu.Tpo parpar/gf16/.deps/libparpar_gf16_a-controller_cpu.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_a-gfmat_coeff.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gfmat_coeff.Tpo -c -o parpar/gf16/libparpar_gf16_a-gfmat_coeff.o `test -f 'parpar/gf16/gfmat_coeff.c' || echo './'`parpar/gf16/gfmat_coeff.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gfmat_coeff.Tpo parpar/gf16/.deps/libparpar_gf16_a-gfmat_coeff.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-gfmat_inv.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gfmat_inv.Tpo -c -o parpar/gf16/libparpar_gf16_a-gfmat_inv.o `test -f 'parpar/gf16/gfmat_inv.cpp' || echo './'`parpar/gf16/gfmat_inv.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-gfmat_inv.Tpo parpar/gf16/.deps/libparpar_gf16_a-gfmat_inv.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-gf16pmul.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16pmul.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16pmul.o `test -f 'parpar/gf16/gf16pmul.cpp' || echo './'`parpar/gf16/gf16pmul.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16pmul.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16pmul.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-gf16mul.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16mul.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16mul.o `test -f 'parpar/gf16/gf16mul.cpp' || echo './'`parpar/gf16/gf16mul.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16mul.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16mul.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_a-gf16_lookup.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16_lookup.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16_lookup.o `test -f 'parpar/gf16/gf16_lookup.c' || echo './'`parpar/gf16/gf16_lookup.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16_lookup.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16_lookup.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_a-gf_add_generic.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf_add_generic.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf_add_generic.o `test -f 'parpar/gf16/gf_add_generic.c' || echo './'`parpar/gf16/gf_add_generic.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf_add_generic.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf_add_generic.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_a-gf16_cksum_generic.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16_cksum_generic.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16_cksum_generic.o `test -f 'parpar/gf16/gf16_cksum_generic.c' || echo './'`parpar/gf16/gf16_cksum_generic.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16_cksum_generic.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16_cksum_generic.Po
rm -f libparpar_gf16.a
ar cru libparpar_gf16.a parpar/gf16/libparpar_gf16_a-controller.o parpar/gf16/libparpar_gf16_a-controller_cpu.o parpar/gf16/libparpar_gf16_a-gfmat_coeff.o parpar/gf16/libparpar_gf16_a-gfmat_inv.o parpar/gf16/libparpar_gf16_a-gf16pmul.o parpar/gf16/libparpar_gf16_a-gf16mul.o parpar/gf16/libparpar_gf16_a-gf16_lookup.o parpar/gf16/libparpar_gf16_a-gf_add_generic.o parpar/gf16/libparpar_gf16_a-gf16_cksum_generic.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sse2_a-gf16_xor_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_xor_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf16_xor_sse2.o `test -f 'parpar/gf16/gf16_xor_sse2.c' || echo './'`parpar/gf16/gf16_xor_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_xor_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_xor_sse2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sse2_a-gf16_lookup_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_lookup_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf16_lookup_sse2.o `test -f 'parpar/gf16/gf16_lookup_sse2.c' || echo './'`parpar/gf16/gf16_lookup_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_lookup_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_lookup_sse2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sse2_a-gf_add_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf_add_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf_add_sse2.o `test -f 'parpar/gf16/gf_add_sse2.c' || echo './'`parpar/gf16/gf_add_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf_add_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf_add_sse2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sse2_a-gf16_cksum_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_cksum_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf16_cksum_sse2.o `test -f 'parpar/gf16/gf16_cksum_sse2.c' || echo './'`parpar/gf16/gf16_cksum_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_cksum_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_cksum_sse2.Po
rm -f libparpar_gf16_sse2.a
ar cru libparpar_gf16_sse2.a parpar/gf16/libparpar_gf16_sse2_a-gf16_xor_sse2.o parpar/gf16/libparpar_gf16_sse2_a-gf16_lookup_sse2.o parpar/gf16/libparpar_gf16_sse2_a-gf_add_sse2.o parpar/gf16/libparpar_gf16_sse2_a-gf16_cksum_sse2.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_sse2.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.Tpo -c -o parpar/gf16/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.o `test -f 'parpar/gf16/gf16_shuffle_ssse3.c' || echo './'`parpar/gf16/gf16_shuffle_ssse3.c
mv -f parpar/gf16/.deps/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.Tpo parpar/gf16/.deps/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.Po
rm -f libparpar_gf16_ssse3.a
ar cru libparpar_gf16_ssse3.a parpar/gf16/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_ssse3.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_avx_a-gf16_shuffle_avx.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx_a-gf16_shuffle_avx.Tpo -c -o parpar/gf16/libparpar_gf16_avx_a-gf16_shuffle_avx.o `test -f 'parpar/gf16/gf16_shuffle_avx.c' || echo './'`parpar/gf16/gf16_shuffle_avx.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx_a-gf16_shuffle_avx.Tpo parpar/gf16/.deps/libparpar_gf16_avx_a-gf16_shuffle_avx.Po
rm -f libparpar_gf16_avx.a
ar cru libparpar_gf16_avx.a parpar/gf16/libparpar_gf16_avx_a-gf16_shuffle_avx.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_avx.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_avx2_a-gf16_xor_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_xor_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf16_xor_avx2.o `test -f 'parpar/gf16/gf16_xor_avx2.c' || echo './'`parpar/gf16/gf16_xor_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_xor_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_xor_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_avx2_a-gf16_shuffle_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_shuffle_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf16_shuffle_avx2.o `test -f 'parpar/gf16/gf16_shuffle_avx2.c' || echo './'`parpar/gf16/gf16_shuffle_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_shuffle_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_shuffle_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_avx2_a-gf_add_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf_add_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf_add_avx2.o `test -f 'parpar/gf16/gf_add_avx2.c' || echo './'`parpar/gf16/gf_add_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf_add_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf_add_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_avx2_a-gf16_cksum_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_cksum_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf16_cksum_avx2.o `test -f 'parpar/gf16/gf16_cksum_avx2.c' || echo './'`parpar/gf16/gf16_cksum_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_cksum_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_cksum_avx2.Po
rm -f libparpar_gf16_avx2.a
ar cru libparpar_gf16_avx2.a parpar/gf16/libparpar_gf16_avx2_a-gf16_xor_avx2.o parpar/gf16/libparpar_gf16_avx2_a-gf16_shuffle_avx2.o parpar/gf16/libparpar_gf16_avx2_a-gf_add_avx2.o parpar/gf16/libparpar_gf16_avx2_a-gf16_cksum_avx2.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_avx2.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_avx512_a-gf16_xor_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_xor_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf16_xor_avx512.o `test -f 'parpar/gf16/gf16_xor_avx512.c' || echo './'`parpar/gf16/gf16_xor_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_xor_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_xor_avx512.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_avx512_a-gf16_shuffle_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_shuffle_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf16_shuffle_avx512.o `test -f 'parpar/gf16/gf16_shuffle_avx512.c' || echo './'`parpar/gf16/gf16_shuffle_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_shuffle_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_shuffle_avx512.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_avx512_a-gf_add_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf_add_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf_add_avx512.o `test -f 'parpar/gf16/gf_add_avx512.c' || echo './'`parpar/gf16/gf_add_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf_add_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf_add_avx512.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_avx512_a-gf16_cksum_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_cksum_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf16_cksum_avx512.o `test -f 'parpar/gf16/gf16_cksum_avx512.c' || echo './'`parpar/gf16/gf16_cksum_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_cksum_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_cksum_avx512.Po
rm -f libparpar_gf16_avx512.a
ar cru libparpar_gf16_avx512.a parpar/gf16/libparpar_gf16_avx512_a-gf16_xor_avx512.o parpar/gf16/libparpar_gf16_avx512_a-gf16_shuffle_avx512.o parpar/gf16/libparpar_gf16_avx512_a-gf_add_avx512.o parpar/gf16/libparpar_gf16_avx512_a-gf16_cksum_avx512.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_avx512.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.Tpo -c -o parpar/gf16/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.o `test -f 'parpar/gf16/gf16_shuffle_vbmi.c' || echo './'`parpar/gf16/gf16_shuffle_vbmi.c
mv -f parpar/gf16/.deps/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.Tpo parpar/gf16/.deps/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.Po
rm -f libparpar_gf16_vbmi.a
ar cru libparpar_gf16_vbmi.a parpar/gf16/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_vbmi.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_gfni_a-gf16_affine_gfni.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_a-gf16_affine_gfni.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_a-gf16_affine_gfni.o `test -f 'parpar/gf16/gf16_affine_gfni.c' || echo './'`parpar/gf16/gf16_affine_gfni.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_a-gf16_affine_gfni.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_a-gf16_affine_gfni.Po
rm -f libparpar_gf16_gfni.a
ar cru libparpar_gf16_gfni.a parpar/gf16/libparpar_gf16_gfni_a-gf16_affine_gfni.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_gfni.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.o `test -f 'parpar/gf16/gf16_affine_avx2.c' || echo './'`parpar/gf16/gf16_affine_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/src/libparpar_gf16_gfni_avx2_a-platform_warnings.o -MD -MP -MF parpar/src/.deps/libparpar_gf16_gfni_avx2_a-platform_warnings.Tpo -c -o parpar/src/libparpar_gf16_gfni_avx2_a-platform_warnings.o `test -f 'parpar/src/platform_warnings.c' || echo './'`parpar/src/platform_warnings.c
mv -f parpar/src/.deps/libparpar_gf16_gfni_avx2_a-platform_warnings.Tpo parpar/src/.deps/libparpar_gf16_gfni_avx2_a-platform_warnings.Po
rm -f libparpar_gf16_gfni_avx2.a
ar cru libparpar_gf16_gfni_avx2.a parpar/gf16/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.o parpar/src/libparpar_gf16_gfni_avx2_a-platform_warnings.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_gfni_avx2.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.o `test -f 'parpar/gf16/gf16_affine_avx512.c' || echo './'`parpar/gf16/gf16_affine_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.Po
rm -f libparpar_gf16_gfni_avx512.a
ar cru libparpar_gf16_gfni_avx512.a parpar/gf16/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_gfni_avx512.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.o `test -f 'parpar/gf16/gf16_affine_avx10.c' || echo './'`parpar/gf16/gf16_affine_avx10.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_gfni_avx10_a-gf_add_avx10.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf_add_avx10.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx10_a-gf_add_avx10.o `test -f 'parpar/gf16/gf_add_avx10.c' || echo './'`parpar/gf16/gf_add_avx10.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf_add_avx10.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf_add_avx10.Po
rm -f libparpar_gf16_gfni_avx10.a
ar cru libparpar_gf16_gfni_avx10.a parpar/gf16/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.o parpar/gf16/libparpar_gf16_gfni_avx10_a-gf_add_avx10.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_gfni_avx10.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/gf16/libparpar_gf16_clmul_a-gf16pmul_sse.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_clmul_a-gf16pmul_sse.Tpo -c -o parpar/gf16/libparpar_gf16_clmul_a-gf16pmul_sse.o `test -f 'parpar/gf16/gf16pmul_sse.c' || echo './'`parpar/gf16/gf16pmul_sse.c
mv -f parpar/gf16/.deps/libparpar_gf16_clmul_a-gf16pmul_sse.Tpo parpar/gf16/.deps/libparpar_gf16_clmul_a-gf16pmul_sse.Po
rm -f libparpar_gf16_clmul.a
ar cru libparpar_gf16_clmul.a parpar/gf16/libparpar_gf16_clmul_a-gf16pmul_sse.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_clmul.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -g -O2 -MT parpar/gf16/libparpar_gf16_avx2_clmul_a-gf16pmul_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_clmul_a-gf16pmul_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_clmul_a-gf16pmul_avx2.o `test -f 'parpar/gf16/gf16pmul_avx2.c' || echo './'`parpar/gf16/gf16pmul_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_clmul_a-gf16pmul_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_clmul_a-gf16pmul_avx2.Po
rm -f libparpar_gf16_avx2_clmul.a
ar cru libparpar_gf16_avx2_clmul.a parpar/gf16/libparpar_gf16_avx2_clmul_a-gf16pmul_avx2.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_avx2_clmul.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/gf16/libparpar_gf16_vpclmul_a-gf16pmul_vpclmul.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_vpclmul_a-gf16pmul_vpclmul.Tpo -c -o parpar/gf16/libparpar_gf16_vpclmul_a-gf16pmul_vpclmul.o `test -f 'parpar/gf16/gf16pmul_vpclmul.c' || echo './'`parpar/gf16/gf16pmul_vpclmul.c
mv -f parpar/gf16/.deps/libparpar_gf16_vpclmul_a-gf16pmul_vpclmul.Tpo parpar/gf16/.deps/libparpar_gf16_vpclmul_a-gf16pmul_vpclmul.Po
rm -f libparpar_gf16_vpclmul.a
ar cru libparpar_gf16_vpclmul.a parpar/gf16/libparpar_gf16_vpclmul_a-gf16pmul_vpclmul.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_vpclmul.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -g -O2 -MT parpar/gf16/libparpar_gf16_vpclgfni_a-gf16pmul_vpclgfni.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_vpclgfni_a-gf16pmul_vpclgfni.Tpo -c -o parpar/gf16/libparpar_gf16_vpclgfni_a-gf16pmul_vpclgfni.o `test -f 'parpar/gf16/gf16pmul_vpclgfni.c' || echo './'`parpar/gf16/gf16pmul_vpclgfni.c
mv -f parpar/gf16/.deps/libparpar_gf16_vpclgfni_a-gf16pmul_vpclgfni.Tpo parpar/gf16/.deps/libparpar_gf16_vpclgfni_a-gf16pmul_vpclgfni.Po
rm -f libparpar_gf16_vpclgfni.a
ar cru libparpar_gf16_vpclgfni.a parpar/gf16/libparpar_gf16_vpclgfni_a-gf16pmul_vpclgfni.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_vpclgfni.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_neon_a-gf16_shuffle_neon.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_neon_a-gf16_shuffle_neon.Tpo -c -o parpar/gf16/libparpar_gf16_neon_a-gf16_shuffle_neon.o `test -f 'parpar/gf16/gf16_shuffle_neon.c' || echo './'`parpar/gf16/gf16_shuffle_neon.c
mv -f parpar/gf16/.deps/libparpar_gf16_neon_a-gf16_shuffle_neon.Tpo parpar/gf16/.deps/libparpar_gf16_neon_a-gf16_shuffle_neon.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_neon_a-gf16_clmul_neon.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_neon_a-gf16_clmul_neon.Tpo -c -o parpar/gf16/libparpar_gf16_neon_a-gf16_clmul_neon.o `test -f 'parpar/gf16/gf16_clmul_neon.c' || echo './'`parpar/gf16/gf16_clmul_neon.c
mv -f parpar/gf16/.deps/libparpar_gf16_neon_a-gf16_clmul_neon.Tpo parpar/gf16/.deps/libparpar_gf16_neon_a-gf16_clmul_neon.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_neon_a-gf_add_neon.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_neon_a-gf_add_neon.Tpo -c -o parpar/gf16/libparpar_gf16_neon_a-gf_add_neon.o `test -f 'parpar/gf16/gf_add_neon.c' || echo './'`parpar/gf16/gf_add_neon.c
mv -f parpar/gf16/.deps/libparpar_gf16_neon_a-gf_add_neon.Tpo parpar/gf16/.deps/libparpar_gf16_neon_a-gf_add_neon.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_neon_a-gf16_cksum_neon.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_neon_a-gf16_cksum_neon.Tpo -c -o parpar/gf16/libparpar_gf16_neon_a-gf16_cksum_neon.o `test -f 'parpar/gf16/gf16_cksum_neon.c' || echo './'`parpar/gf16/gf16_cksum_neon.c
mv -f parpar/gf16/.deps/libparpar_gf16_neon_a-gf16_cksum_neon.Tpo parpar/gf16/.deps/libparpar_gf16_neon_a-gf16_cksum_neon.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_neon_a-gf16pmul_neon.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_neon_a-gf16pmul_neon.Tpo -c -o parpar/gf16/libparpar_gf16_neon_a-gf16pmul_neon.o `test -f 'parpar/gf16/gf16pmul_neon.c' || echo './'`parpar/gf16/gf16pmul_neon.c
mv -f parpar/gf16/.deps/libparpar_gf16_neon_a-gf16pmul_neon.Tpo parpar/gf16/.deps/libparpar_gf16_neon_a-gf16pmul_neon.Po
rm -f libparpar_gf16_neon.a
ar cru libparpar_gf16_neon.a parpar/gf16/libparpar_gf16_neon_a-gf16_shuffle_neon.o parpar/gf16/libparpar_gf16_neon_a-gf16_clmul_neon.o parpar/gf16/libparpar_gf16_neon_a-gf_add_neon.o parpar/gf16/libparpar_gf16_neon_a-gf16_cksum_neon.o parpar/gf16/libparpar_gf16_neon_a-gf16pmul_neon.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_neon.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_neonsha3_a-gf16_clmul_sha3.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_neonsha3_a-gf16_clmul_sha3.Tpo -c -o parpar/gf16/libparpar_gf16_neonsha3_a-gf16_clmul_sha3.o `test -f 'parpar/gf16/gf16_clmul_sha3.c' || echo './'`parpar/gf16/gf16_clmul_sha3.c
mv -f parpar/gf16/.deps/libparpar_gf16_neonsha3_a-gf16_clmul_sha3.Tpo parpar/gf16/.deps/libparpar_gf16_neonsha3_a-gf16_clmul_sha3.Po
rm -f libparpar_gf16_neonsha3.a
ar cru libparpar_gf16_neonsha3.a parpar/gf16/libparpar_gf16_neonsha3_a-gf16_clmul_sha3.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_neonsha3.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sve_a-gf16_shuffle128_sve.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sve_a-gf16_shuffle128_sve.Tpo -c -o parpar/gf16/libparpar_gf16_sve_a-gf16_shuffle128_sve.o `test -f 'parpar/gf16/gf16_shuffle128_sve.c' || echo './'`parpar/gf16/gf16_shuffle128_sve.c
mv -f parpar/gf16/.deps/libparpar_gf16_sve_a-gf16_shuffle128_sve.Tpo parpar/gf16/.deps/libparpar_gf16_sve_a-gf16_shuffle128_sve.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sve_a-gf_add_sve.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sve_a-gf_add_sve.Tpo -c -o parpar/gf16/libparpar_gf16_sve_a-gf_add_sve.o `test -f 'parpar/gf16/gf_add_sve.c' || echo './'`parpar/gf16/gf_add_sve.c
mv -f parpar/gf16/.deps/libparpar_gf16_sve_a-gf_add_sve.Tpo parpar/gf16/.deps/libparpar_gf16_sve_a-gf_add_sve.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sve_a-gf16_cksum_sve.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sve_a-gf16_cksum_sve.Tpo -c -o parpar/gf16/libparpar_gf16_sve_a-gf16_cksum_sve.o `test -f 'parpar/gf16/gf16_cksum_sve.c' || echo './'`parpar/gf16/gf16_cksum_sve.c
mv -f parpar/gf16/.deps/libparpar_gf16_sve_a-gf16_cksum_sve.Tpo parpar/gf16/.deps/libparpar_gf16_sve_a-gf16_cksum_sve.Po
rm -f libparpar_gf16_sve.a
ar cru libparpar_gf16_sve.a parpar/gf16/libparpar_gf16_sve_a-gf16_shuffle128_sve.o parpar/gf16/libparpar_gf16_sve_a-gf_add_sve.o parpar/gf16/libparpar_gf16_sve_a-gf16_cksum_sve.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_sve.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sve2_a-gf16_shuffle128_sve2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_shuffle128_sve2.Tpo -c -o parpar/gf16/libparpar_gf16_sve2_a-gf16_shuffle128_sve2.o `test -f 'parpar/gf16/gf16_shuffle128_sve2.c' || echo './'`parpar/gf16/gf16_shuffle128_sve2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_shuffle128_sve2.Tpo parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_shuffle128_sve2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sve2_a-gf16_shuffle2x128_sve2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_shuffle2x128_sve2.Tpo -c -o parpar/gf16/libparpar_gf16_sve2_a-gf16_shuffle2x128_sve2.o `test -f 'parpar/gf16/gf16_shuffle2x128_sve2.c' || echo './'`parpar/gf16/gf16_shuffle2x128_sve2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_shuffle2x128_sve2.Tpo parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_shuffle2x128_sve2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sve2_a-gf16_shuffle512_sve2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_shuffle512_sve2.Tpo -c -o parpar/gf16/libparpar_gf16_sve2_a-gf16_shuffle512_sve2.o `test -f 'parpar/gf16/gf16_shuffle512_sve2.c' || echo './'`parpar/gf16/gf16_shuffle512_sve2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_shuffle512_sve2.Tpo parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_shuffle512_sve2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sve2_a-gf16_clmul_sve2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_clmul_sve2.Tpo -c -o parpar/gf16/libparpar_gf16_sve2_a-gf16_clmul_sve2.o `test -f 'parpar/gf16/gf16_clmul_sve2.c' || echo './'`parpar/gf16/gf16_clmul_sve2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_clmul_sve2.Tpo parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16_clmul_sve2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sve2_a-gf_add_sve2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sve2_a-gf_add_sve2.Tpo -c -o parpar/gf16/libparpar_gf16_sve2_a-gf_add_sve2.o `test -f 'parpar/gf16/gf_add_sve2.c' || echo './'`parpar/gf16/gf_add_sve2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sve2_a-gf_add_sve2.Tpo parpar/gf16/.deps/libparpar_gf16_sve2_a-gf_add_sve2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -std=c99  -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -MT parpar/gf16/libparpar_gf16_sve2_a-gf16pmul_sve2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16pmul_sve2.Tpo -c -o parpar/gf16/libparpar_gf16_sve2_a-gf16pmul_sve2.o `test -f 'parpar/gf16/gf16pmul_sve2.c' || echo './'`parpar/gf16/gf16pmul_sve2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16pmul_sve2.Tpo parpar/gf16/.deps/libparpar_gf16_sve2_a-gf16pmul_sve2.Po
rm -f libparpar_gf16_sve2.a
ar cru libparpar_gf16_sve2.a parpar/gf16/libparpar_gf16_sve2_a-gf16_shuffle128_sve2.o parpar/gf16/libparpar_gf16_sve2_a-gf16_shuffle2x128_sve2.o parpar/gf16/libparpar_gf16_sve2_a-gf16_shuffle512_sve2.o parpar/gf16/libparpar_gf16_sve2_a-gf16_clmul_sve2.o parpar/gf16/libparpar_gf16_sve2_a-gf_add_sve2.o parpar/gf16/libparpar_gf16_sve2_a-gf16pmul_sve2.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_sve2.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -march=rv64gcv  -g -O2 -MT parpar/gf16/libparpar_gf16_rvv_a-gf16_cksum_rvv.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_rvv_a-gf16_cksum_rvv.Tpo -c -o parpar/gf16/libparpar_gf16_rvv_a-gf16_cksum_rvv.o `test -f 'parpar/gf16/gf16_cksum_rvv.c' || echo './'`parpar/gf16/gf16_cksum_rvv.c
mv -f parpar/gf16/.deps/libparpar_gf16_rvv_a-gf16_cksum_rvv.Tpo parpar/gf16/.deps/libparpar_gf16_rvv_a-gf16_cksum_rvv.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -march=rv64gcv  -g -O2 -MT parpar/gf16/libparpar_gf16_rvv_a-gf16_shuffle128_rvv.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_rvv_a-gf16_shuffle128_rvv.Tpo -c -o parpar/gf16/libparpar_gf16_rvv_a-gf16_shuffle128_rvv.o `test -f 'parpar/gf16/gf16_shuffle128_rvv.c' || echo './'`parpar/gf16/gf16_shuffle128_rvv.c
mv -f parpar/gf16/.deps/libparpar_gf16_rvv_a-gf16_shuffle128_rvv.Tpo parpar/gf16/.deps/libparpar_gf16_rvv_a-gf16_shuffle128_rvv.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -march=rv64gcv  -g -O2 -MT parpar/gf16/libparpar_gf16_rvv_a-gf_add_rvv.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_rvv_a-gf_add_rvv.Tpo -c -o parpar/gf16/libparpar_gf16_rvv_a-gf_add_rvv.o `test -f 'parpar/gf16/gf_add_rvv.c' || echo './'`parpar/gf16/gf_add_rvv.c
mv -f parpar/gf16/.deps/libparpar_gf16_rvv_a-gf_add_rvv.Tpo parpar/gf16/.deps/libparpar_gf16_rvv_a-gf_add_rvv.Po
rm -f libparpar_gf16_rvv.a
ar cru libparpar_gf16_rvv.a parpar/gf16/libparpar_gf16_rvv_a-gf16_cksum_rvv.o parpar/gf16/libparpar_gf16_rvv_a-gf16_shuffle128_rvv.o parpar/gf16/libparpar_gf16_rvv_a-gf_add_rvv.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_rvv.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -march=rv64gcv_zvbc  -g -O2 -MT parpar/gf16/libparpar_gf16_rvv_zvbc_a-gf16_clmul_rvv.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_rvv_zvbc_a-gf16_clmul_rvv.Tpo -c -o parpar/gf16/libparpar_gf16_rvv_zvbc_a-gf16_clmul_rvv.o `test -f 'parpar/gf16/gf16_clmul_rvv.c' || echo './'`parpar/gf16/gf16_clmul_rvv.c
mv -f parpar/gf16/.deps/libparpar_gf16_rvv_zvbc_a-gf16_clmul_rvv.Tpo parpar/gf16/.deps/libparpar_gf16_rvv_zvbc_a-gf16_clmul_rvv.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -march=rv64gcv_zvbc  -g -O2 -MT parpar/gf16/libparpar_gf16_rvv_zvbc_a-gf16pmul_rvv.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_rvv_zvbc_a-gf16pmul_rvv.Tpo -c -o parpar/gf16/libparpar_gf16_rvv_zvbc_a-gf16pmul_rvv.o `test -f 'parpar/gf16/gf16pmul_rvv.c' || echo './'`parpar/gf16/gf16pmul_rvv.c
mv -f parpar/gf16/.deps/libparpar_gf16_rvv_zvbc_a-gf16pmul_rvv.Tpo parpar/gf16/.deps/libparpar_gf16_rvv_zvbc_a-gf16pmul_rvv.Po
rm -f libparpar_gf16_rvv_zvbc.a
ar cru libparpar_gf16_rvv_zvbc.a parpar/gf16/libparpar_gf16_rvv_zvbc_a-gf16_clmul_rvv.o parpar/gf16/libparpar_gf16_rvv_zvbc_a-gf16pmul_rvv.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_gf16_rvv_zvbc.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c99  -g -O2 -MT parpar/hasher/libparpar_hasher_a-crc_zeropad.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_a-crc_zeropad.Tpo -c -o parpar/hasher/libparpar_hasher_a-crc_zeropad.o `test -f 'parpar/hasher/crc_zeropad.c' || echo './'`parpar/hasher/crc_zeropad.c
mv -f parpar/hasher/.deps/libparpar_hasher_a-crc_zeropad.Tpo parpar/hasher/.deps/libparpar_hasher_a-crc_zeropad.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_a-hasher.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_a-hasher.Tpo -c -o parpar/hasher/libparpar_hasher_a-hasher.o `test -f 'parpar/hasher/hasher.cpp' || echo './'`parpar/hasher/hasher.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_a-hasher.Tpo parpar/hasher/.deps/libparpar_hasher_a-hasher.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_a-hasher_scalar.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_a-hasher_scalar.Tpo -c -o parpar/hasher/libparpar_hasher_a-hasher_scalar.o `test -f 'parpar/hasher/hasher_scalar.cpp' || echo './'`parpar/hasher/hasher_scalar.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_a-hasher_scalar.Tpo parpar/hasher/.deps/libparpar_hasher_a-hasher_scalar.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_a-hasher_input.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_a-hasher_input.Tpo -c -o parpar/hasher/libparpar_hasher_a-hasher_input.o `test -f 'parpar/hasher/hasher_input.cpp' || echo './'`parpar/hasher/hasher_input.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_a-hasher_input.Tpo parpar/hasher/.deps/libparpar_hasher_a-hasher_input.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_a-hasher_md5crc.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_a-hasher_md5crc.Tpo -c -o parpar/hasher/libparpar_hasher_a-hasher_md5crc.o `test -f 'parpar/hasher/hasher_md5crc.cpp' || echo './'`parpar/hasher/hasher_md5crc.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_a-hasher_md5crc.Tpo parpar/hasher/.deps/libparpar_hasher_a-hasher_md5crc.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_a-tables.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_a-tables.Tpo -c -o parpar/hasher/libparpar_hasher_a-tables.o `test -f 'parpar/hasher/tables.cpp' || echo './'`parpar/hasher/tables.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_a-tables.Tpo parpar/hasher/.deps/libparpar_hasher_a-tables.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c99  -g -O2 -MT parpar/hasher/libparpar_hasher_a-md5-final.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_a-md5-final.Tpo -c -o parpar/hasher/libparpar_hasher_a-md5-final.o `test -f 'parpar/hasher/md5-final.c' || echo './'`parpar/hasher/md5-final.c
In file included from parpar/hasher/md5-scalar.h:3,
                 from parpar/hasher/md5-final.c:2:
parpar/hasher/md5-base.h: In function ‘md5_alloc_scalar’:
parpar/hasher/../src/platform.h:303:49: warning: implicit declaration of function ‘posix_memalign’ [-Wimplicit-function-declaration]
  303 |         #define ALIGN_ALLOC(buf, len, align) if(posix_memalign((void**)&(buf), align < sizeof(void*) ? sizeof(void*) : align, (len))) (buf) = NULL
      |                                                 ^~~~~~~~~~~~~~
parpar/hasher/md5-base.h:315:9: note: in expansion of macro ‘ALIGN_ALLOC’
  315 |         ALIGN_ALLOC(ret, sizeof(word_t)*words, sizeof(word_t) < sizeof(void*) ? sizeof(void*) : sizeof(word_t));
      |         ^~~~~~~~~~~
mv -f parpar/hasher/.deps/libparpar_hasher_a-md5-final.Tpo parpar/hasher/.deps/libparpar_hasher_a-md5-final.Po
rm -f libparpar_hasher.a
ar cru libparpar_hasher.a parpar/hasher/libparpar_hasher_a-crc_zeropad.o parpar/hasher/libparpar_hasher_a-hasher.o parpar/hasher/libparpar_hasher_a-hasher_scalar.o parpar/hasher/libparpar_hasher_a-hasher_input.o parpar/hasher/libparpar_hasher_a-hasher_md5crc.o parpar/hasher/libparpar_hasher_a-tables.o parpar/hasher/libparpar_hasher_a-md5-final.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_sse2_a-hasher_sse.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_sse2_a-hasher_sse.Tpo -c -o parpar/hasher/libparpar_hasher_sse2_a-hasher_sse.o `test -f 'parpar/hasher/hasher_sse.cpp' || echo './'`parpar/hasher/hasher_sse.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_sse2_a-hasher_sse.Tpo parpar/hasher/.deps/libparpar_hasher_sse2_a-hasher_sse.Po
rm -f libparpar_hasher_sse2.a
ar cru libparpar_hasher_sse2.a parpar/hasher/libparpar_hasher_sse2_a-hasher_sse.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_sse2.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_clmul_a-hasher_clmul.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_clmul_a-hasher_clmul.Tpo -c -o parpar/hasher/libparpar_hasher_clmul_a-hasher_clmul.o `test -f 'parpar/hasher/hasher_clmul.cpp' || echo './'`parpar/hasher/hasher_clmul.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_clmul_a-hasher_clmul.Tpo parpar/hasher/.deps/libparpar_hasher_clmul_a-hasher_clmul.Po
rm -f libparpar_hasher_clmul.a
ar cru libparpar_hasher_clmul.a parpar/hasher/libparpar_hasher_clmul_a-hasher_clmul.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_clmul.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_xop_a-hasher_xop.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_xop_a-hasher_xop.Tpo -c -o parpar/hasher/libparpar_hasher_xop_a-hasher_xop.o `test -f 'parpar/hasher/hasher_xop.cpp' || echo './'`parpar/hasher/hasher_xop.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_xop_a-hasher_xop.Tpo parpar/hasher/.deps/libparpar_hasher_xop_a-hasher_xop.Po
rm -f libparpar_hasher_xop.a
ar cru libparpar_hasher_xop.a parpar/hasher/libparpar_hasher_xop_a-hasher_xop.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_xop.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_bmi1_a-hasher_bmi1.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_bmi1_a-hasher_bmi1.Tpo -c -o parpar/hasher/libparpar_hasher_bmi1_a-hasher_bmi1.o `test -f 'parpar/hasher/hasher_bmi1.cpp' || echo './'`parpar/hasher/hasher_bmi1.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_bmi1_a-hasher_bmi1.Tpo parpar/hasher/.deps/libparpar_hasher_bmi1_a-hasher_bmi1.Po
rm -f libparpar_hasher_bmi1.a
ar cru libparpar_hasher_bmi1.a parpar/hasher/libparpar_hasher_bmi1_a-hasher_bmi1.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_bmi1.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_avx2_a-hasher_avx2.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_avx2_a-hasher_avx2.Tpo -c -o parpar/hasher/libparpar_hasher_avx2_a-hasher_avx2.o `test -f 'parpar/hasher/hasher_avx2.cpp' || echo './'`parpar/hasher/hasher_avx2.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_avx2_a-hasher_avx2.Tpo parpar/hasher/.deps/libparpar_hasher_avx2_a-hasher_avx2.Po
rm -f libparpar_hasher_avx2.a
ar cru libparpar_hasher_avx2.a parpar/hasher/libparpar_hasher_avx2_a-hasher_avx2.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_avx2.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_avx512_a-hasher_avx512.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_avx512_a-hasher_avx512.Tpo -c -o parpar/hasher/libparpar_hasher_avx512_a-hasher_avx512.o `test -f 'parpar/hasher/hasher_avx512.cpp' || echo './'`parpar/hasher/hasher_avx512.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_avx512_a-hasher_avx512.Tpo parpar/hasher/.deps/libparpar_hasher_avx512_a-hasher_avx512.Po
rm -f libparpar_hasher_avx512.a
ar cru libparpar_hasher_avx512.a parpar/hasher/libparpar_hasher_avx512_a-hasher_avx512.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_avx512.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -g -O2 -MT parpar/hasher/libparpar_hasher_avx512vl_a-hasher_avx512vl.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_avx512vl_a-hasher_avx512vl.Tpo -c -o parpar/hasher/libparpar_hasher_avx512vl_a-hasher_avx512vl.o `test -f 'parpar/hasher/hasher_avx512vl.cpp' || echo './'`parpar/hasher/hasher_avx512vl.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_avx512vl_a-hasher_avx512vl.Tpo parpar/hasher/.deps/libparpar_hasher_avx512vl_a-hasher_avx512vl.Po
rm -f libparpar_hasher_avx512vl.a
ar cru libparpar_hasher_avx512vl.a parpar/hasher/libparpar_hasher_avx512vl_a-hasher_avx512vl.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_avx512vl.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -g -O2 -MT parpar/hasher/libparpar_hasher_armcrc_a-hasher_armcrc.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_armcrc_a-hasher_armcrc.Tpo -c -o parpar/hasher/libparpar_hasher_armcrc_a-hasher_armcrc.o `test -f 'parpar/hasher/hasher_armcrc.cpp' || echo './'`parpar/hasher/hasher_armcrc.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_armcrc_a-hasher_armcrc.Tpo parpar/hasher/.deps/libparpar_hasher_armcrc_a-hasher_armcrc.Po
rm -f libparpar_hasher_armcrc.a
ar cru libparpar_hasher_armcrc.a parpar/hasher/libparpar_hasher_armcrc_a-hasher_armcrc.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_armcrc.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_neon_a-hasher_neon.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_neon_a-hasher_neon.Tpo -c -o parpar/hasher/libparpar_hasher_neon_a-hasher_neon.o `test -f 'parpar/hasher/hasher_neon.cpp' || echo './'`parpar/hasher/hasher_neon.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_neon_a-hasher_neon.Tpo parpar/hasher/.deps/libparpar_hasher_neon_a-hasher_neon.Po
rm -f libparpar_hasher_neon.a
ar cru libparpar_hasher_neon.a parpar/hasher/libparpar_hasher_neon_a-hasher_neon.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_neon.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -g -O2 -MT parpar/hasher/libparpar_hasher_neoncrc_a-hasher_neoncrc.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_neoncrc_a-hasher_neoncrc.Tpo -c -o parpar/hasher/libparpar_hasher_neoncrc_a-hasher_neoncrc.o `test -f 'parpar/hasher/hasher_neoncrc.cpp' || echo './'`parpar/hasher/hasher_neoncrc.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_neoncrc_a-hasher_neoncrc.Tpo parpar/hasher/.deps/libparpar_hasher_neoncrc_a-hasher_neoncrc.Po
rm -f libparpar_hasher_neoncrc.a
ar cru libparpar_hasher_neoncrc.a parpar/hasher/libparpar_hasher_neoncrc_a-hasher_neoncrc.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_neoncrc.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -MT parpar/hasher/libparpar_hasher_sve2_a-hasher_sve2.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_sve2_a-hasher_sve2.Tpo -c -o parpar/hasher/libparpar_hasher_sve2_a-hasher_sve2.o `test -f 'parpar/hasher/hasher_sve2.cpp' || echo './'`parpar/hasher/hasher_sve2.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_sve2_a-hasher_sve2.Tpo parpar/hasher/.deps/libparpar_hasher_sve2_a-hasher_sve2.Po
rm -f libparpar_hasher_sve2.a
ar cru libparpar_hasher_sve2.a parpar/hasher/libparpar_hasher_sve2_a-hasher_sve2.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_sve2.a
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -march=rv64gc_zbkc  -g -O2 -MT parpar/hasher/libparpar_hasher_zbkc_a-hasher_rvzbc.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_zbkc_a-hasher_rvzbc.Tpo -c -o parpar/hasher/libparpar_hasher_zbkc_a-hasher_rvzbc.o `test -f 'parpar/hasher/hasher_rvzbc.cpp' || echo './'`parpar/hasher/hasher_rvzbc.cpp
mv -f parpar/hasher/.deps/libparpar_hasher_zbkc_a-hasher_rvzbc.Tpo parpar/hasher/.deps/libparpar_hasher_zbkc_a-hasher_rvzbc.Po
rm -f libparpar_hasher_zbkc.a
ar cru libparpar_hasher_zbkc.a parpar/hasher/libparpar_hasher_zbkc_a-hasher_rvzbc.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libparpar_hasher_zbkc.a
rm -f libpar2.a
ar cru libpar2.a src/crc.o src/creatorpacket.o src/criticalpacket.o src/datablock.o src/descriptionpacket.o src/diskfile.o src/filechecksummer.o src/galois.o src/mainpacket.o src/md5.o src/par1fileformat.o src/par1repairer.o src/par1repairersourcefile.o src/par2creator.o src/par2creatorsourcefile.o src/par2fileformat.o src/par2repairer.o src/par2repairersourcefile.o src/recoverypacket.o src/reedsolomon.o src/verificationhashtable.o src/verificationpacket.o src/libpar2.o parpar/gf16/libparpar_gf16*.o parpar/hasher/libparpar_hasher*.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libpar2.a
g++ -std=c++11 -std=c++11 -pthread  -g -O2   -o par2 src/par2cmdline.o src/commandline.o libpar2.a -lstdc++ -lpthread      -latomic
make[1]: Leaving directory '/home/sander/git/par2cmdline-turbo'

sander@k1:~/git/par2cmdline-turbo$ objdump -d par2 | awk '{ print $3 }' | sort | uniq -c | grep " v"
sander@k1:~/git/par2cmdline-turbo$ 
sanderjo commented 3 months ago

Weird (or not?):

gcc 14.2.0 on Ubuntu 24.10 (both with old and with uptodate config.guess) on x86: no error with make with standard Makefile and thus -std=c99

So RISCV64 is a determining factor after all?

animetosho commented 3 months ago

Yes, since the issue doesn't affect par2cmdline but does par2cmdline-turbo, it should be reported here - thanks for doing so!

Could you try rebuilding from the latest Git code to see if it fixes it?

If it doesn't, during configure, there should be a line:

checking whether posix_memalign is declared

Could you post the result you get for that?

sanderjo commented 3 months ago

To be sure, I used a fresh docker container, with fresh git:

/par2cmdline-turbo # git log | head -20
commit dc6bced8dc66eba06cc71d2437d371c20584ff70
Merge: 8bd0a43 3c71b1f
Author: animetosho <animetosho@users.noreply.github.com>
Date:   Thu Aug 15 20:51:06 2024 +1000

    Merge branch 'parpar' into turbo

commit 3c71b1fb7509d1dae11f3a09b18a285d24cd6b9a
Author: animetosho <animetosho@users.noreply.github.com>
Date:   Thu Aug 15 20:49:28 2024 +1000

    Perform posix_memalign check using C compiler instead of C++
    Ref #34

In ./configure:

checking whether posix_memalign is declared... yes

But make still fails:

mv -f parpar/hasher/.deps/libparpar_hasher_a-tables.Tpo parpar/hasher/.deps/libparpar_hasher_a-tables.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c99  -g -O2 -MT parpar/hasher/libparpar_hasher_a-md5-final.o -MD -MP -MF parpar/hasher/.deps/libparpar_hasher_a-md5-final.Tpo -c -o parpar/hasher/libparpar_hasher_a-md5-final.o `test -f 'parpar/hasher/md5-final.c' || echo './'`parpar/hasher/md5-final.c
In file included from parpar/hasher/md5-scalar.h:3,
                 from parpar/hasher/md5-final.c:2:
parpar/hasher/md5-base.h: In function 'md5_alloc_scalar':
parpar/hasher/../src/platform.h:303:49: error: implicit declaration of function 'posix_memalign' [-Wimplicit-function-declaration]
  303 |         #define ALIGN_ALLOC(buf, len, align) if(posix_memalign((void**)&(buf), align < sizeof(void*) ? sizeof(void*) : align, (len))) (buf) = NULL
      |                                                 ^~~~~~~~~~~~~~
parpar/hasher/md5-base.h:315:9: note: in expansion of macro 'ALIGN_ALLOC'
  315 |         ALIGN_ALLOC(ret, sizeof(word_t)*words, sizeof(word_t) < sizeof(void*) ? sizeof(void*) : sizeof(word_t));
      |         ^~~~~~~~~~~
make[1]: *** [Makefile:2831: parpar/hasher/libparpar_hasher_a-md5-final.o] Error 1
make[1]: Leaving directory '/par2cmdline-turbo'
make: *** [Makefile:1353: all] Error 2
Command exited with non-zero status 2

Without any knowledge from my side: still -std=c99 as parameter for gcc:

gcc -DHAVE_CONFIG_H -I. -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16 -std=c99 -g -O2 -MT

sanderjo commented 3 months ago

Full automake.sh and ./configure

I see configure.ac:51: You should run autoupdate. I'll try that. BRB

/par2cmdline-turbo # ./automake.sh 
configure.ac:42: installing './ar-lib'
configure.ac:42: installing './compile'
configure.ac:32: installing './install-sh'
configure.ac:32: installing './missing'
parallel-tests: installing './test-driver'
configure.ac:51: warning: The macro 'AC_HEADER_STDC' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/headers.m4:663: AC_HEADER_STDC is expanded from...
configure.ac:51: the top level
configure.ac:65: warning: The macro 'AC_LANG_C' is obsolete.
configure.ac:65: You should run autoupdate.
./lib/autoconf/c.m4:72: AC_LANG_C is expanded from...
m4/acx_pthread.m4:7: ACX_PTHREAD is expanded from...
configure.ac:65: the top level
configure.ac:65: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:65: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
m4/acx_pthread.m4:7: ACX_PTHREAD is expanded from...
configure.ac:65: the top level
/par2cmdline-turbo # ./configure
checking build system type... riscv64-unknown-linux-musl
checking host system type... riscv64-unknown-linux-musl
checking for a BSD-compatible install... /usr/bin/install -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 2
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking xargs -n works... yes
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking whether make supports the include directive... yes (GNU style)
checking dependency style of g++... gcc3
checking for ranlib... ranlib
checking for gcc... gcc
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for _Bool... no
checking for stdbool.h that conforms to C99 or later... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for stdio.h... (cached) yes
checking for endian.h... yes
checking for getopt.h... yes
checking for limits.h... yes
checking for size_t... yes
checking whether byte ordering is bigendian... no
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for gcc option to enable large file support... none needed
checking for declarations of fseeko and ftello... yes
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... yes
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking whether pthreads work with -pthreads... no
checking whether pthreads work with -mthreads... no
checking for the pthreads library -lpthread... yes
checking whether pthreads work with --thread-safe... no
checking whether pthreads work with -mt... no
checking for the pthreads library -lpthreadGC2... no
checking for working memcmp... yes
checking for stricmp... no
checking for strcasecmp... yes
checking for strchr... yes
checking for memcpy... yes
checking for getopt... yes
checking for getopt_long... yes
checking whether g++ supports C++11 features with -std=c++11... yes
checking whether C compiler accepts -msse2... no
checking whether C compiler accepts -mssse3... no
checking whether C compiler accepts -mpclmul... no
checking whether C compiler accepts -mavx... no
checking whether C compiler accepts -mxop... no
checking whether C compiler accepts -mbmi... no
checking whether C compiler accepts -mavx2... no
checking whether C compiler accepts -mavx512vl -mavx512bw... no
checking whether C compiler accepts -mavx512vbmi... no
checking whether C compiler accepts -mgfni... no
checking whether C compiler accepts -mvpclmulqdq... no
checking whether C compiler accepts -mno-evex512... no
checking whether C compiler accepts -mfpu=neon -march=armv7-a... no
checking whether C compiler accepts -mfpu=fp-armv8... no
checking whether C compiler accepts -march=armv8-a+sve... no
checking whether C compiler accepts -march=armv8-a+sve2... no
checking whether C compiler accepts -march=armv8-a+crc... no
checking whether C compiler accepts -march=armv8.2-a+sha3... no
checking whether C compiler accepts -march=rv64gcv... yes
checking whether C compiler accepts -march=rv32gcv... no
checking whether C compiler accepts -march=rv64gc_zbkc... yes
checking whether C compiler accepts -march=rv32gc_zbkc... no
checking whether C compiler accepts -march=rv64gcv_zvbc... yes
checking whether C compiler accepts -march=rv32gcv_zvbc... no
checking for gcc options needed to detect all undeclared functions... none needed
checking whether posix_memalign is declared... yes
checking whether the linker accepts -latomic... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating stamp-h
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
/par2cmdline-turbo #
sanderjo commented 3 months ago

autoupdate does not give a better automake.sh output. See below

And the make results in the same error

So that is not relevant, I would say

/par2cmdline-turbo # ./automake.sh 
configure.ac:51: warning: The macro 'AC_HEADER_STDC' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/headers.m4:663: AC_HEADER_STDC is expanded from...
configure.ac:51: the top level
configure.ac:65: warning: The macro 'AC_LANG_C' is obsolete.
configure.ac:65: You should run autoupdate.
./lib/autoconf/c.m4:72: AC_LANG_C is expanded from...
m4/acx_pthread.m4:7: ACX_PTHREAD is expanded from...
configure.ac:65: the top level
configure.ac:65: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:65: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
m4/acx_pthread.m4:7: ACX_PTHREAD is expanded from...
configure.ac:65: the top level
/par2cmdline-turbo # 

/par2cmdline-turbo # autoupdate 
configure.ac:51: warning: The preprocessor macro 'STDC_HEADERS' is obsolete.
  Except in unusual embedded environments, you can safely include all
  C89 headers unconditionally.
/par2cmdline-turbo # 

/par2cmdline-turbo # ./automake.sh 
configure.ac:51: warning: The preprocessor macro 'STDC_HEADERS' is obsolete.
configure.ac:51:   Except in unusual embedded environments, you can safely include all
configure.ac:51:   C89 headers unconditionally.
configure.ac:73: warning: The macro 'AC_LANG_C' is obsolete.
configure.ac:73: You should run autoupdate.
./lib/autoconf/c.m4:72: AC_LANG_C is expanded from...
m4/acx_pthread.m4:7: ACX_PTHREAD is expanded from...
configure.ac:73: the top level
configure.ac:73: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:73: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
m4/acx_pthread.m4:7: ACX_PTHREAD is expanded from...
configure.ac:73: the top level
animetosho commented 3 months ago

Thanks for the result - that's unexpected.

Can you try again with the latest code?

If it still doesn't work, could you try the following commands and post the output?

echo -e "#include <stdlib.h>\nint main(){return (int)posix_memalign((void*)1,16,16);}" | gcc -x c -c - -o /dev/null -Wall -Werror
echo -e "#include <stdlib.h>\nint main(){return (int)posix_memalign((void*)1,16,16);}" | gcc -x c -c - -o /dev/null -Wall -Werror -D_POSIX_C_SOURCE=200112L
echo -e "#include <stdlib.h>\nint main(){return (int)posix_memalign((void*)1,16,16);}" | gcc -x c -c - -std=c99 -o /dev/null -Wall -Werror
echo -e "#include <stdlib.h>\nint main(){return (int)posix_memalign((void*)1,16,16);}" | gcc -x c -c - -std=c99 -o /dev/null -Wall -Werror -D_POSIX_C_SOURCE=200112L

Again, if it doesn't work, could you also check config.log for the line checking whether posix_memalign is declared and post the command on the line below?

sanderjo commented 3 months ago

With the fresh git version:

/par2cmdline-turbo # cat config.log | grep posix_memalign
configure:9501: checking whether posix_memalign is declared
conftest.c:43:10: error: 'posix_memalign' undeclared (first use in this function)
   43 |   (void) posix_memalign;
| #ifndef posix_memalign
|   (void) posix_memalign;
|   (void) posix_memalign;
ac_cv_have_decl_posix_memalign='no'

and in stdout:

checking whether posix_memalign is declared... no

The make is now running ... brb in 10 minutes will the result. Then also your other checks with "echo ... "

EDIT:

Still same error:

parpar/gf16/../src/platform.h:303:49: error: implicit declaration of function 'posix_memalign' [-Wimplicit-function-declaration]

Full configure output:

checking build system type... riscv64-unknown-linux-musl
checking host system type... riscv64-unknown-linux-musl
checking for a BSD-compatible install... /usr/bin/install -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 2
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking xargs -n works... yes
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking whether make supports the include directive... yes (GNU style)
checking dependency style of g++... gcc3
checking for ranlib... ranlib
checking for gcc... gcc
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for _Bool... no
checking for stdbool.h that conforms to C99 or later... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for stdio.h... (cached) yes
checking for endian.h... yes
checking for getopt.h... yes
checking for limits.h... yes
checking for size_t... yes
checking whether byte ordering is bigendian... no
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for gcc option to enable large file support... none needed
checking for declarations of fseeko and ftello... yes
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... yes
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking whether pthreads work with -pthreads... no
checking whether pthreads work with -mthreads... no
checking for the pthreads library -lpthread... yes
checking whether pthreads work with --thread-safe... no
checking whether pthreads work with -mt... no
checking for the pthreads library -lpthreadGC2... no
checking for working memcmp... yes
checking for stricmp... no
checking for strcasecmp... yes
checking for strchr... yes
checking for memcpy... yes
checking for getopt... yes
checking for getopt_long... yes
checking whether g++ supports C++11 features with -std=c++11... yes
checking whether C compiler accepts -msse2... no
checking whether C compiler accepts -mssse3... no
checking whether C compiler accepts -mpclmul... no
checking whether C compiler accepts -mavx... no
checking whether C compiler accepts -mxop... no
checking whether C compiler accepts -mbmi... no
checking whether C compiler accepts -mavx2... no
checking whether C compiler accepts -mavx512vl -mavx512bw... no
checking whether C compiler accepts -mavx512vbmi... no
checking whether C compiler accepts -mgfni... no
checking whether C compiler accepts -mvpclmulqdq... no
checking whether C compiler accepts -mno-evex512... no
checking whether C compiler accepts -mfpu=neon -march=armv7-a... no
checking whether C compiler accepts -mfpu=fp-armv8... no
checking whether C compiler accepts -march=armv8-a+sve... no
checking whether C compiler accepts -march=armv8-a+sve2... no
checking whether C compiler accepts -march=armv8-a+crc... no
checking whether C compiler accepts -march=armv8.2-a+sha3... no
checking whether C compiler accepts -march=rv64gcv... yes
checking whether C compiler accepts -march=rv32gcv... no
checking whether C compiler accepts -march=rv64gc_zbkc... yes
checking whether C compiler accepts -march=rv32gc_zbkc... no
checking whether C compiler accepts -march=rv64gcv_zvbc... yes
checking whether C compiler accepts -march=rv32gcv_zvbc... no
checking for gcc options needed to detect all undeclared functions... none needed
checking whether posix_memalign is declared... no
checking whether the linker accepts -latomic... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating stamp-h
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
/par2cmdline-turbo # 
sanderjo commented 3 months ago

Results of the oneliners:

~/bla # echo -e "#include <stdlib.h>\nint main(){return (int)posix_memalign((void*)1,16,16);}" | gcc -x c -c - -o /dev/null -Wall -Werror
~/bla # echo -e "#include <stdlib.h>\nint main(){return (int)posix_memalign((void*)1,16,16);}" | gcc -x c -c - -o /dev/null -Wall -Werror -D_POSIX_C_SOURCE=200112L
~/bla # echo -e "#include <stdlib.h>\nint main(){return (int)posix_memalign((void*)1,16,16);}" | gcc -x c -c - -std=c99 -o /dev/null -Wall -Werror
<stdin>: In function 'main':
<stdin>:2:24: error: implicit declaration of function 'posix_memalign' [-Wimplicit-function-declaration]
~/bla # echo -e "#include <stdlib.h>\nint main(){return (int)posix_memalign((void*)1,16,16);}" | gcc -x c -c - -std=c99 -o /dev/null -Wall -Werror -D_POSIX_C_SOURCE=2
00112L
~/bla #

So:

animetosho commented 3 months ago

Can you post the GCC compile command that generated the error?

It looks like the configure is now correctly detecting that posix_memalign requires the -D_POSIX_C_SOURCE=200112L flag, and your commands show that adding it should fix the issue.
The flag should be present in the compile commands, but for some reason, you still get the error.

sanderjo commented 3 months ago

/ # git clone https://github.com/animetosho/par2cmdline-turbo.git
Cloning into 'par2cmdline-turbo'...
remote: Enumerating objects: 4290, done.
remote: Counting objects: 100% (1648/1648), done.
remote: Compressing objects: 100% (593/593), done.
remote: Total 4290 (delta 1073), reused 1566 (delta 1014), pack-reused 2642 (from 1)
Receiving objects: 100% (4290/4290), 6.24 MiB | 6.25 MiB/s, done.
Resolving deltas: 100% (2934/2934), done.
/ # cd par2cmdline-turbo/
/par2cmdline-turbo # cp /usr/share/autoconf/build-aux/config.guess .
/par2cmdline-turbo # cp /usr/share/autoconf/build-aux/config.sub .
/par2cmdline-turbo # ./automake.sh
configure.ac:42: installing './ar-lib'
configure.ac:42: installing './compile'
configure.ac:32: installing './install-sh'
configure.ac:32: installing './missing'
parallel-tests: installing './test-driver'
configure.ac:51: warning: The macro 'AC_HEADER_STDC' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/headers.m4:663: AC_HEADER_STDC is expanded from...
configure.ac:51: the top level
configure.ac:65: warning: The macro 'AC_LANG_C' is obsolete.
configure.ac:65: You should run autoupdate.
./lib/autoconf/c.m4:72: AC_LANG_C is expanded from...
m4/acx_pthread.m4:7: ACX_PTHREAD is expanded from...
configure.ac:65: the top level
configure.ac:65: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:65: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
m4/acx_pthread.m4:7: ACX_PTHREAD is expanded from...
configure.ac:65: the top level
/par2cmdline-turbo #
/par2cmdline-turbo # ./configure
checking build system type... riscv64-unknown-linux-musl
checking host system type... riscv64-unknown-linux-musl
checking for a BSD-compatible install... /usr/bin/install -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 2
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking xargs -n works... yes
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking whether make supports the include directive... yes (GNU style)
checking dependency style of g++... gcc3
checking for ranlib... ranlib
checking for gcc... gcc
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for _Bool... no
checking for stdbool.h that conforms to C99 or later... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for stdio.h... (cached) yes
checking for endian.h... yes
checking for getopt.h... yes
checking for limits.h... yes
checking for size_t... yes
checking whether byte ordering is bigendian... no
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for gcc option to enable large file support... none needed
checking for declarations of fseeko and ftello... yes
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... yes
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking whether pthreads work with -pthreads... no
checking whether pthreads work with -mthreads... no
checking for the pthreads library -lpthread... yes
checking whether pthreads work with --thread-safe... no
checking whether pthreads work with -mt... no
checking for the pthreads library -lpthreadGC2... no
checking for working memcmp... yes
checking for stricmp... no
checking for strcasecmp... yes
checking for strchr... yes
checking for memcpy... yes
checking for getopt... yes
checking for getopt_long... yes
checking whether g++ supports C++11 features with -std=c++11... yes
checking whether C compiler accepts -msse2... no
checking whether C compiler accepts -mssse3... no
checking whether C compiler accepts -mpclmul... no
checking whether C compiler accepts -mavx... no
checking whether C compiler accepts -mxop... no
checking whether C compiler accepts -mbmi... no
checking whether C compiler accepts -mavx2... no
checking whether C compiler accepts -mavx512vl -mavx512bw... no
checking whether C compiler accepts -mavx512vbmi... no
checking whether C compiler accepts -mgfni... no
checking whether C compiler accepts -mvpclmulqdq... no
checking whether C compiler accepts -mno-evex512... no
checking whether C compiler accepts -mfpu=neon -march=armv7-a... no
checking whether C compiler accepts -mfpu=fp-armv8... no
checking whether C compiler accepts -march=armv8-a+sve... no
checking whether C compiler accepts -march=armv8-a+sve2... no
checking whether C compiler accepts -march=armv8-a+crc... no
checking whether C compiler accepts -march=armv8.2-a+sha3... no
checking whether C compiler accepts -march=rv64gcv... yes
checking whether C compiler accepts -march=rv32gcv... no
checking whether C compiler accepts -march=rv64gc_zbkc... yes
checking whether C compiler accepts -march=rv32gc_zbkc... no
checking whether C compiler accepts -march=rv64gcv_zvbc... yes
checking whether C compiler accepts -march=rv32gcv_zvbc... no
checking for gcc options needed to detect all undeclared functions... none needed
checking whether posix_memalign is declared... no
checking whether the linker accepts -latomic... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating stamp-h
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
/par2cmdline-turbo #
/par2cmdline-turbo #
/par2cmdline-turbo # make
(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh '/par2cmdline-turbo/missing' autoheader)
rm -f stamp-h1
touch config.h.in
rm -f stamp-h1
cd . && /bin/sh ./config.status config.h
config.status: creating config.h
make  all-am
make[1]: Entering directory '/par2cmdline-turbo'
depbase=`echo src/par2cmdline.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2cmdline.o -MD -MP -MF $depbase.Tpo -c -o src/par2cmdline.o src/par2cmdline.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/commandline.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/commandline.o -MD -MP -MF $depbase.Tpo -c -o src/commandline.o src/commandline.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/crc.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/crc.o -MD -MP -MF $depbase.Tpo -c -o src/crc.o src/crc.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/creatorpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/creatorpacket.o -MD -MP -MF $depbase.Tpo -c -o src/creatorpacket.o src/creatorpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/criticalpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/criticalpacket.o -MD -MP -MF $depbase.Tpo -c -o src/criticalpacket.o src/criticalpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/datablock.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/datablock.o -MD -MP -MF $depbase.Tpo -c -o src/datablock.o src/datablock.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/descriptionpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/descriptionpacket.o -MD -MP -MF $depbase.Tpo -c -o src/descriptionpacket.o src/descriptionpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/diskfile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/diskfile.o -MD -MP -MF $depbase.Tpo -c -o src/diskfile.o src/diskfile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/filechecksummer.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/filechecksummer.o -MD -MP -MF $depbase.Tpo -c -o src/filechecksummer.o src/filechecksummer.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/galois.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/galois.o -MD -MP -MF $depbase.Tpo -c -o src/galois.o src/galois.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/mainpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/mainpacket.o -MD -MP -MF $depbase.Tpo -c -o src/mainpacket.o src/mainpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/md5.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/md5.o -MD -MP -MF $depbase.Tpo -c -o src/md5.o src/md5.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par1fileformat.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par1fileformat.o -MD -MP -MF $depbase.Tpo -c -o src/par1fileformat.o src/par1fileformat.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par1repairer.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par1repairer.o -MD -MP -MF $depbase.Tpo -c -o src/par1repairer.o src/par1repairer.cpp &&\
mv -f $depbase.Tpo $depbase.Po
src/par1repairer.cpp: In member function 'bool Par1Repairer::LoadRecoveryFile(std::string)':
src/par1repairer.cpp:517:8: warning: unused variable 'success' [-Wunused-variable]
  517 |   bool success = diskfilemap.Insert(diskfile);
      |        ^~~~~~~
src/par1repairer.cpp: In member function 'bool Par1Repairer::VerifySourceFiles()':
src/par1repairer.cpp:639:14: warning: unused variable 'success' [-Wunused-variable]
  639 |         bool success = diskfilemap.Insert(diskfile);
      |              ^~~~~~~
src/par1repairer.cpp: In member function 'bool Par1Repairer::VerifyExtraFiles(const std::vector<std::__cxx11::basic_string<char> >&)':
src/par1repairer.cpp:720:14: warning: unused variable 'success' [-Wunused-variable]
  720 |         bool success = diskfilemap.Insert(diskfile);
      |              ^~~~~~~
src/par1repairer.cpp: In member function 'bool Par1Repairer::RenameTargetFiles()':
src/par1repairer.cpp:1072:12: warning: unused variable 'success' [-Wunused-variable]
 1072 |       bool success = diskfilemap.Insert(targetfile);
      |            ^~~~~~~
src/par1repairer.cpp:1100:12: warning: unused variable 'success' [-Wunused-variable]
 1100 |       bool success = diskfilemap.Insert(targetfile);
      |            ^~~~~~~
src/par1repairer.cpp: In member function 'bool Par1Repairer::CreateTargetFiles()':
src/par1repairer.cpp:1147:12: warning: unused variable 'success' [-Wunused-variable]
 1147 |       bool success = diskfilemap.Insert(targetfile);
      |            ^~~~~~~
In file included from src/par1repairer.h:24,
                 from src/libpar2internal.h:248,
                 from src/par1repairer.cpp:21:
src/reedsolomon.h: In instantiation of 'bool ReedSolomon<g>::Compute(NoiseLevel, std::ostream&, std::ostream&) [with g = Galois<8, 285, unsigned char>; std::ostream = std::basic_ostream<char>]':
src/par1repairer.cpp:1259:28:   required from here
 1259 |   bool success = rs.Compute(noiselevel, sout, serr);
      |                  ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
src/reedsolomon.h:263:9: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'ReedSolomon<Galois<8, 285, unsigned char> >::G' {aka 'class Galois<8, 285, unsigned char>'} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
  263 |   memset(leftmatrix, 0, outcount * incount * sizeof(G));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/libpar2internal.h:221:
src/galois.h:57:7: note: 'ReedSolomon<Galois<8, 285, unsigned char> >::G' {aka 'class Galois<8, 285, unsigned char>'} declared here
   57 | class Galois
      |       ^~~~~~
src/reedsolomon.h:271:11: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'ReedSolomon<Galois<8, 285, unsigned char> >::G' {aka 'class Galois<8, 285, unsigned char>'} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
  271 |     memset(rightmatrix, 0, outcount *outcount * sizeof(G));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/galois.h:57:7: note: 'ReedSolomon<Galois<8, 285, unsigned char> >::G' {aka 'class Galois<8, 285, unsigned char>'} declared here
   57 | class Galois
      |       ^~~~~~
depbase=`echo src/par1repairersourcefile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par1repairersourcefile.o -MD -MP -MF $depbase.Tpo -c -o src/par1repairersourcefile.o src/par1repairersourcefile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2creator.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2creator.o -MD -MP -MF $depbase.Tpo -c -o src/par2creator.o src/par2creator.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2creatorsourcefile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2creatorsourcefile.o -MD -MP -MF $depbase.Tpo -c -o src/par2creatorsourcefile.o src/par2creatorsourcefile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2fileformat.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2fileformat.o -MD -MP -MF $depbase.Tpo -c -o src/par2fileformat.o src/par2fileformat.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2repairer.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2repairer.o -MD -MP -MF $depbase.Tpo -c -o src/par2repairer.o src/par2repairer.cpp &&\
mv -f $depbase.Tpo $depbase.Po
src/par2repairer.cpp: In member function 'bool Par2Repairer::LoadPacketsFromFile(std::string)':
src/par2repairer.cpp:589:10: warning: unused variable 'success' [-Wunused-variable]
  589 |     bool success = diskFileMap.Insert(diskfile);
      |          ^~~~~~~
src/par2repairer.cpp: In lambda function:
src/par2repairer.cpp:1308:14: warning: unused variable 'success' [-Wunused-variable]
 1308 |         bool success = diskFileMap.Insert(diskfile);
      |              ^~~~~~~
src/par2repairer.cpp: In lambda function:
src/par2repairer.cpp:1381:16: warning: unused variable 'success' [-Wunused-variable]
 1381 |           bool success = diskFileMap.Insert(diskfile);
      |                ^~~~~~~
src/par2repairer.cpp: In member function 'bool Par2Repairer::RenameTargetFiles()':
src/par2repairer.cpp:2207:12: warning: unused variable 'success' [-Wunused-variable]
 2207 |       bool success = diskFileMap.Insert(targetfile);
      |            ^~~~~~~
src/par2repairer.cpp:2239:12: warning: unused variable 'success' [-Wunused-variable]
 2239 |       bool success = diskFileMap.Insert(targetfile);
      |            ^~~~~~~
src/par2repairer.cpp: In member function 'bool Par2Repairer::CreateTargetFiles()':
src/par2repairer.cpp:2288:12: warning: unused variable 'success' [-Wunused-variable]
 2288 |       bool success = diskFileMap.Insert(targetfile);
      |            ^~~~~~~
depbase=`echo src/par2repairersourcefile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2repairersourcefile.o -MD -MP -MF $depbase.Tpo -c -o src/par2repairersourcefile.o src/par2repairersourcefile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/recoverypacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/recoverypacket.o -MD -MP -MF $depbase.Tpo -c -o src/recoverypacket.o src/recoverypacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/reedsolomon.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/reedsolomon.o -MD -MP -MF $depbase.Tpo -c -o src/reedsolomon.o src/reedsolomon.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/verificationhashtable.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/verificationhashtable.o -MD -MP -MF $depbase.Tpo -c -o src/verificationhashtable.o src/verificationhashtable.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/verificationpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/verificationpacket.o -MD -MP -MF $depbase.Tpo -c -o src/verificationpacket.o src/verificationpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/libpar2.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/libpar2.o -MD -MP -MF $depbase.Tpo -c -o src/libpar2.o src/libpar2.cpp &&\
mv -f $depbase.Tpo $depbase.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-controller.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-controller.Tpo -c -o parpar/gf16/libparpar_gf16_a-controller.o `test -f 'parpar/gf16/controller.cpp' || echo './'`parpar/gf16/controller.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-controller.Tpo parpar/gf16/.deps/libparpar_gf16_a-controller.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-controller_cpu.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-controller_cpu.Tpo -c -o parpar/gf16/libparpar_gf16_a-controller_cpu.o `test -f 'parpar/gf16/controller_cpu.cpp' || echo './'`parpar/gf16/controller_cpu.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-controller_cpu.Tpo parpar/gf16/.deps/libparpar_gf16_a-controller_cpu.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_a-gfmat_coeff.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gfmat_coeff.Tpo -c -o parpar/gf16/libparpar_gf16_a-gfmat_coeff.o `test -f 'parpar/gf16/gfmat_coeff.c' || echo './'`parpar/gf16/gfmat_coeff.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gfmat_coeff.Tpo parpar/gf16/.deps/libparpar_gf16_a-gfmat_coeff.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-gfmat_inv.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gfmat_inv.Tpo -c -o parpar/gf16/libparpar_gf16_a-gfmat_inv.o `test -f 'parpar/gf16/gfmat_inv.cpp' || echo './'`parpar/gf16/gfmat_inv.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-gfmat_inv.Tpo parpar/gf16/.deps/libparpar_gf16_a-gfmat_inv.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-gf16pmul.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16pmul.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16pmul.o `test -f 'parpar/gf16/gf16pmul.cpp' || echo './'`parpar/gf16/gf16pmul.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16pmul.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16pmul.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-gf16mul.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16mul.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16mul.o `test -f 'parpar/gf16/gf16mul.cpp' || echo './'`parpar/gf16/gf16mul.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16mul.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16mul.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_a-gf16_lookup.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16_lookup.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16_lookup.o `test -f 'parpar/gf16/gf16_lookup.c' || echo './'`parpar/gf16/gf16_lookup.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16_lookup.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16_lookup.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_a-gf_add_generic.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf_add_generic.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf_add_generic.o `test -f 'parpar/gf16/gf_add_generic.c' || echo './'`parpar/gf16/gf_add_generic.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf_add_generic.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf_add_generic.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_a-gf16_cksum_generic.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16_cksum_generic.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16_cksum_generic.o `test -f 'parpar/gf16/gf16_cksum_generic.c' || echo './'`parpar/gf16/gf16_cksum_generic.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16_cksum_generic.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16_cksum_generic.Po
rm -f libparpar_gf16.a
ar cr libparpar_gf16.a parpar/gf16/libparpar_gf16_a-controller.o parpar/gf16/libparpar_gf16_a-controller_cpu.o parpar/gf16/libparpar_gf16_a-gfmat_coeff.o parpar/gf16/libparpar_gf16_a-gfmat_inv.o parpar/gf16/libparpar_gf16_a-gf16pmul.o parpar/gf16/libparpar_gf16_a-gf16mul.o parpar/gf16/libparpar_gf16_a-gf16_lookup.o parpar/gf16/libparpar_gf16_a-gf_add_generic.o parpar/gf16/libparpar_gf16_a-gf16_cksum_generic.o
ranlib libparpar_gf16.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_sse2_a-gf16_xor_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_xor_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf16_xor_sse2.o `test -f 'parpar/gf16/gf16_xor_sse2.c' || echo './'`parpar/gf16/gf16_xor_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_xor_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_xor_sse2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_sse2_a-gf16_lookup_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_lookup_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf16_lookup_sse2.o `test -f 'parpar/gf16/gf16_lookup_sse2.c' || echo './'`parpar/gf16/gf16_lookup_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_lookup_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_lookup_sse2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_sse2_a-gf_add_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf_add_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf_add_sse2.o `test -f 'parpar/gf16/gf_add_sse2.c' || echo './'`parpar/gf16/gf_add_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf_add_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf_add_sse2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_sse2_a-gf16_cksum_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_cksum_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf16_cksum_sse2.o `test -f 'parpar/gf16/gf16_cksum_sse2.c' || echo './'`parpar/gf16/gf16_cksum_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_cksum_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_cksum_sse2.Po
rm -f libparpar_gf16_sse2.a
ar cr libparpar_gf16_sse2.a parpar/gf16/libparpar_gf16_sse2_a-gf16_xor_sse2.o parpar/gf16/libparpar_gf16_sse2_a-gf16_lookup_sse2.o parpar/gf16/libparpar_gf16_sse2_a-gf_add_sse2.o parpar/gf16/libparpar_gf16_sse2_a-gf16_cksum_sse2.o
ranlib libparpar_gf16_sse2.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.Tpo -c -o parpar/gf16/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.o `test -f 'parpar/gf16/gf16_shuffle_ssse3.c' || echo './'`parpar/gf16/gf16_shuffle_ssse3.c
mv -f parpar/gf16/.deps/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.Tpo parpar/gf16/.deps/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.Po
rm -f libparpar_gf16_ssse3.a
ar cr libparpar_gf16_ssse3.a parpar/gf16/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.o
ranlib libparpar_gf16_ssse3.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx_a-gf16_shuffle_avx.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx_a-gf16_shuffle_avx.Tpo -c -o parpar/gf16/libparpar_gf16_avx_a-gf16_shuffle_avx.o `test -f 'parpar/gf16/gf16_shuffle_avx.c' || echo './'`parpar/gf16/gf16_shuffle_avx.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx_a-gf16_shuffle_avx.Tpo parpar/gf16/.deps/libparpar_gf16_avx_a-gf16_shuffle_avx.Po
rm -f libparpar_gf16_avx.a
ar cr libparpar_gf16_avx.a parpar/gf16/libparpar_gf16_avx_a-gf16_shuffle_avx.o
ranlib libparpar_gf16_avx.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx2_a-gf16_xor_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_xor_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf16_xor_avx2.o `test -f 'parpar/gf16/gf16_xor_avx2.c' || echo './'`parpar/gf16/gf16_xor_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_xor_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_xor_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx2_a-gf16_shuffle_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_shuffle_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf16_shuffle_avx2.o `test -f 'parpar/gf16/gf16_shuffle_avx2.c' || echo './'`parpar/gf16/gf16_shuffle_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_shuffle_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_shuffle_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx2_a-gf_add_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf_add_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf_add_avx2.o `test -f 'parpar/gf16/gf_add_avx2.c' || echo './'`parpar/gf16/gf_add_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf_add_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf_add_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx2_a-gf16_cksum_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_cksum_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf16_cksum_avx2.o `test -f 'parpar/gf16/gf16_cksum_avx2.c' || echo './'`parpar/gf16/gf16_cksum_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_cksum_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_cksum_avx2.Po
rm -f libparpar_gf16_avx2.a
ar cr libparpar_gf16_avx2.a parpar/gf16/libparpar_gf16_avx2_a-gf16_xor_avx2.o parpar/gf16/libparpar_gf16_avx2_a-gf16_shuffle_avx2.o parpar/gf16/libparpar_gf16_avx2_a-gf_add_avx2.o parpar/gf16/libparpar_gf16_avx2_a-gf16_cksum_avx2.o
ranlib libparpar_gf16_avx2.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx512_a-gf16_xor_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_xor_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf16_xor_avx512.o `test -f 'parpar/gf16/gf16_xor_avx512.c' || echo './'`parpar/gf16/gf16_xor_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_xor_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_xor_avx512.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx512_a-gf16_shuffle_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_shuffle_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf16_shuffle_avx512.o `test -f 'parpar/gf16/gf16_shuffle_avx512.c' || echo './'`parpar/gf16/gf16_shuffle_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_shuffle_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_shuffle_avx512.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx512_a-gf_add_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf_add_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf_add_avx512.o `test -f 'parpar/gf16/gf_add_avx512.c' || echo './'`parpar/gf16/gf_add_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf_add_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf_add_avx512.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx512_a-gf16_cksum_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_cksum_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf16_cksum_avx512.o `test -f 'parpar/gf16/gf16_cksum_avx512.c' || echo './'`parpar/gf16/gf16_cksum_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_cksum_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_cksum_avx512.Po
rm -f libparpar_gf16_avx512.a
ar cr libparpar_gf16_avx512.a parpar/gf16/libparpar_gf16_avx512_a-gf16_xor_avx512.o parpar/gf16/libparpar_gf16_avx512_a-gf16_shuffle_avx512.o parpar/gf16/libparpar_gf16_avx512_a-gf_add_avx512.o parpar/gf16/libparpar_gf16_avx512_a-gf16_cksum_avx512.o
ranlib libparpar_gf16_avx512.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.Tpo -c -o parpar/gf16/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.o `test -f 'parpar/gf16/gf16_shuffle_vbmi.c' || echo './'`parpar/gf16/gf16_shuffle_vbmi.c
mv -f parpar/gf16/.deps/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.Tpo parpar/gf16/.deps/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.Po
rm -f libparpar_gf16_vbmi.a
ar cr libparpar_gf16_vbmi.a parpar/gf16/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.o
ranlib libparpar_gf16_vbmi.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_gfni_a-gf16_affine_gfni.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_a-gf16_affine_gfni.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_a-gf16_affine_gfni.o `test -f 'parpar/gf16/gf16_affine_gfni.c' || echo './'`parpar/gf16/gf16_affine_gfni.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_a-gf16_affine_gfni.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_a-gf16_affine_gfni.Po
rm -f libparpar_gf16_gfni.a
ar cr libparpar_gf16_gfni.a parpar/gf16/libparpar_gf16_gfni_a-gf16_affine_gfni.o
ranlib libparpar_gf16_gfni.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.o `test -f 'parpar/gf16/gf16_affine_avx2.c' || echo './'`parpar/gf16/gf16_affine_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/src/libparpar_gf16_gfni_avx2_a-platform_warnings.o -MD -MP -MF parpar/src/.deps/libparpar_gf16_gfni_avx2_a-platform_warnings.Tpo -c -o parpar/src/libparpar_gf16_gfni_avx2_a-platform_warnings.o `test -f 'parpar/src/platform_warnings.c' || echo './'`parpar/src/platform_warnings.c
mv -f parpar/src/.deps/libparpar_gf16_gfni_avx2_a-platform_warnings.Tpo parpar/src/.deps/libparpar_gf16_gfni_avx2_a-platform_warnings.Po
rm -f libparpar_gf16_gfni_avx2.a
ar cr libparpar_gf16_gfni_avx2.a parpar/gf16/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.o parpar/src/libparpar_gf16_gfni_avx2_a-platform_warnings.o
ranlib libparpar_gf16_gfni_avx2.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.o `test -f 'parpar/gf16/gf16_affine_avx512.c' || echo './'`parpar/gf16/gf16_affine_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.Po
rm -f libparpar_gf16_gfni_avx512.a
ar cr libparpar_gf16_gfni_avx512.a parpar/gf16/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.o
ranlib libparpar_gf16_gfni_avx512.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.o `test -f 'parpar/gf16/gf16_affine_avx10.c' || echo './'`parpar/gf16/gf16_affine_avx10.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_gfni_avx10_a-gf_add_avx10.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf_add_avx10.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx10_a-gf_add_avx10.o `test -f 'parpar/gf16/gf_add_avx10.c' || echo './'`parpar/gf16/gf_add_avx10.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf_add_avx10.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf_add_avx10.Po
rm -f libparpar_gf16_gfni_avx10.a
ar cr libparpar_gf16_gfni_avx10.a parpar/gf16/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.o parpar/gf16/libparpar_gf16_gfni_avx10_a-gf_add_avx10.o
ranlib libparpar_gf16_gfni_avx10.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_clmul_a-gf16pmul_sse.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_clmul_a-gf16pmul_sse.Tpo -c -o parpar/gf16/libparpar_gf16_clmul_a-gf16pmul_sse.o `test -f 'parpar/gf16/gf16pmul_sse.c' || echo './'`parpar/gf16/gf16pmul_sse.c
In file included from parpar/gf16/gf16pmul_sse.c:1:
parpar/gf16/gf16_global.h: In function 'gf16_finish_packed':
parpar/gf16/../src/platform.h:303:49: error: implicit declaration of function 'posix_memalign' [-Wimplicit-function-declaration]
  303 |         #define ALIGN_ALLOC(buf, len, align) if(posix_memalign((void**)&(buf), align < sizeof(void*) ? sizeof(void*) : align, (len))) (buf) = NULL
      |                                                 ^~~~~~~~~~~~~~
parpar/gf16/gf16_global.h:251:25: note: in expansion of macro 'ALIGN_ALLOC'
  251 |                         ALIGN_ALLOC(checksum, blockLen, accessAlign);
      |                         ^~~~~~~~~~~
make[1]: *** [Makefile:2327: parpar/gf16/libparpar_gf16_clmul_a-gf16pmul_sse.o] Error 1
make[1]: Leaving directory '/par2cmdline-turbo'
make: *** [Makefile:1353: all] Error 2
/par2cmdline-turbo #
``
sanderjo commented 3 months ago

to be sure: config.guess from savanah

Same error.


/ # git clone https://github.com/animetosho/par2cmdline-turbo.git config.guess_from_savanah_________par2cmdline-turbo
Cloning into 'config.guess_from_savanah_________par2cmdline-turbo'...
remote: Enumerating objects: 4290, done.
remote: Counting objects: 100% (1648/1648), done.
remote: Compressing objects: 100% (593/593), done.
remote: Total 4290 (delta 1071), reused 1568 (delta 1014), pack-reused 2642 (from 1)
Receiving objects: 100% (4290/4290), 6.24 MiB | 6.21 MiB/s, done.
Resolving deltas: 100% (2932/2932), done.
/ # cd config.guess_from_savanah_________par2cmdline-turbo/
/config.guess_from_savanah_________par2cmdline-turbo # curl -o config.guess -L "http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 50743    0 50743    0     0  44925      0 --:--:--  0:00:01 --:--:-- 44984
/config.guess_from_savanah_________par2cmdline-turbo # curl -o config.sub -L "http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 39713    0 39713    0     0  81295      0 --:--:-- --:--:-- --:--:-- 81379
/config.guess_from_savanah_________par2cmdline-turbo # ./automake.sh
configure.ac:42: installing './ar-lib'
configure.ac:42: installing './compile'
configure.ac:32: installing './install-sh'
configure.ac:32: installing './missing'
parallel-tests: installing './test-driver'
configure.ac:51: warning: The macro 'AC_HEADER_STDC' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/headers.m4:663: AC_HEADER_STDC is expanded from...
configure.ac:51: the top level
configure.ac:65: warning: The macro 'AC_LANG_C' is obsolete.
configure.ac:65: You should run autoupdate.
./lib/autoconf/c.m4:72: AC_LANG_C is expanded from...
m4/acx_pthread.m4:7: ACX_PTHREAD is expanded from...
configure.ac:65: the top level
configure.ac:65: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:65: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
m4/acx_pthread.m4:7: ACX_PTHREAD is expanded from...
configure.ac:65: the top level
/config.guess_from_savanah_________par2cmdline-turbo # ./configure
checking build system type... riscv64-unknown-linux-musl
checking host system type... riscv64-unknown-linux-musl
checking for a BSD-compatible install... /usr/bin/install -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 2
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking xargs -n works... yes
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking whether make supports the include directive... yes (GNU style)
checking dependency style of g++... gcc3
checking for ranlib... ranlib
checking for gcc... gcc
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for _Bool... no
checking for stdbool.h that conforms to C99 or later... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for stdio.h... (cached) yes
checking for endian.h... yes
checking for getopt.h... yes
checking for limits.h... yes
checking for size_t... yes
checking whether byte ordering is bigendian... no
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for gcc option to enable large file support... none needed
checking for declarations of fseeko and ftello... yes
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... yes
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking whether pthreads work with -pthreads... no
checking whether pthreads work with -mthreads... no
checking for the pthreads library -lpthread... yes
checking whether pthreads work with --thread-safe... no
checking whether pthreads work with -mt... no
checking for the pthreads library -lpthreadGC2... no
checking for working memcmp... yes
checking for stricmp... no
checking for strcasecmp... yes
checking for strchr... yes
checking for memcpy... yes
checking for getopt... yes
checking for getopt_long... yes
checking whether g++ supports C++11 features with -std=c++11... yes
checking whether C compiler accepts -msse2... no
checking whether C compiler accepts -mssse3... no
checking whether C compiler accepts -mpclmul... no
checking whether C compiler accepts -mavx... no
checking whether C compiler accepts -mxop... no
checking whether C compiler accepts -mbmi... no
checking whether C compiler accepts -mavx2... no
checking whether C compiler accepts -mavx512vl -mavx512bw... no
checking whether C compiler accepts -mavx512vbmi... no
checking whether C compiler accepts -mgfni... no
checking whether C compiler accepts -mvpclmulqdq... no
checking whether C compiler accepts -mno-evex512... no
checking whether C compiler accepts -mfpu=neon -march=armv7-a... no
checking whether C compiler accepts -mfpu=fp-armv8... no
checking whether C compiler accepts -march=armv8-a+sve... no
checking whether C compiler accepts -march=armv8-a+sve2... no
checking whether C compiler accepts -march=armv8-a+crc... no
checking whether C compiler accepts -march=armv8.2-a+sha3... no
checking whether C compiler accepts -march=rv64gcv... yes
checking whether C compiler accepts -march=rv32gcv... no
checking whether C compiler accepts -march=rv64gc_zbkc... yes
checking whether C compiler accepts -march=rv32gc_zbkc... no
checking whether C compiler accepts -march=rv64gcv_zvbc... yes
checking whether C compiler accepts -march=rv32gcv_zvbc... no
checking for gcc options needed to detect all undeclared functions... none needed
checking whether posix_memalign is declared... no
checking whether the linker accepts -latomic... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating stamp-h
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
/config.guess_from_savanah_________par2cmdline-turbo #
/config.guess_from_savanah_________par2cmdline-turbo #
/config.guess_from_savanah_________par2cmdline-turbo # time make
(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh '/config.guess_from_savanah_________par2cmdline-turbo/missing' autoheader)
rm -f stamp-h1
touch config.h.in
rm -f stamp-h1
cd . && /bin/sh ./config.status config.h
config.status: creating config.h
make  all-am
make[1]: Entering directory '/config.guess_from_savanah_________par2cmdline-turbo'
depbase=`echo src/par2cmdline.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2cmdline.o -MD -MP -MF $depbase.Tpo -c -o src/par2cmdline.o src/par2cmdline.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/commandline.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/commandline.o -MD -MP -MF $depbase.Tpo -c -o src/commandline.o src/commandline.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/crc.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/crc.o -MD -MP -MF $depbase.Tpo -c -o src/crc.o src/crc.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/creatorpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/creatorpacket.o -MD -MP -MF $depbase.Tpo -c -o src/creatorpacket.o src/creatorpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/criticalpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/criticalpacket.o -MD -MP -MF $depbase.Tpo -c -o src/criticalpacket.o src/criticalpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/datablock.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/datablock.o -MD -MP -MF $depbase.Tpo -c -o src/datablock.o src/datablock.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/descriptionpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/descriptionpacket.o -MD -MP -MF $depbase.Tpo -c -o src/descriptionpacket.o src/descriptionpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/diskfile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/diskfile.o -MD -MP -MF $depbase.Tpo -c -o src/diskfile.o src/diskfile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/filechecksummer.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/filechecksummer.o -MD -MP -MF $depbase.Tpo -c -o src/filechecksummer.o src/filechecksummer.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/galois.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/galois.o -MD -MP -MF $depbase.Tpo -c -o src/galois.o src/galois.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/mainpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/mainpacket.o -MD -MP -MF $depbase.Tpo -c -o src/mainpacket.o src/mainpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/md5.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/md5.o -MD -MP -MF $depbase.Tpo -c -o src/md5.o src/md5.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par1fileformat.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par1fileformat.o -MD -MP -MF $depbase.Tpo -c -o src/par1fileformat.o src/par1fileformat.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par1repairer.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par1repairer.o -MD -MP -MF $depbase.Tpo -c -o src/par1repairer.o src/par1repairer.cpp &&\
mv -f $depbase.Tpo $depbase.Po
src/par1repairer.cpp: In member function 'bool Par1Repairer::LoadRecoveryFile(std::string)':
src/par1repairer.cpp:517:8: warning: unused variable 'success' [-Wunused-variable]
  517 |   bool success = diskfilemap.Insert(diskfile);
      |        ^~~~~~~
src/par1repairer.cpp: In member function 'bool Par1Repairer::VerifySourceFiles()':
src/par1repairer.cpp:639:14: warning: unused variable 'success' [-Wunused-variable]
  639 |         bool success = diskfilemap.Insert(diskfile);
      |              ^~~~~~~
src/par1repairer.cpp: In member function 'bool Par1Repairer::VerifyExtraFiles(const std::vector<std::__cxx11::basic_string<char> >&)':
src/par1repairer.cpp:720:14: warning: unused variable 'success' [-Wunused-variable]
  720 |         bool success = diskfilemap.Insert(diskfile);
      |              ^~~~~~~
src/par1repairer.cpp: In member function 'bool Par1Repairer::RenameTargetFiles()':
src/par1repairer.cpp:1072:12: warning: unused variable 'success' [-Wunused-variable]
 1072 |       bool success = diskfilemap.Insert(targetfile);
      |            ^~~~~~~
src/par1repairer.cpp:1100:12: warning: unused variable 'success' [-Wunused-variable]
 1100 |       bool success = diskfilemap.Insert(targetfile);
      |            ^~~~~~~
src/par1repairer.cpp: In member function 'bool Par1Repairer::CreateTargetFiles()':
src/par1repairer.cpp:1147:12: warning: unused variable 'success' [-Wunused-variable]
 1147 |       bool success = diskfilemap.Insert(targetfile);
      |            ^~~~~~~
In file included from src/par1repairer.h:24,
                 from src/libpar2internal.h:248,
                 from src/par1repairer.cpp:21:
src/reedsolomon.h: In instantiation of 'bool ReedSolomon<g>::Compute(NoiseLevel, std::ostream&, std::ostream&) [with g = Galois<8, 285, unsigned char>; std::ostream = std::basic_ostream<char>]':
src/par1repairer.cpp:1259:28:   required from here
 1259 |   bool success = rs.Compute(noiselevel, sout, serr);
      |                  ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
src/reedsolomon.h:263:9: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'ReedSolomon<Galois<8, 285, unsigned char> >::G' {aka 'class Galois<8, 285, unsigned char>'} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
  263 |   memset(leftmatrix, 0, outcount * incount * sizeof(G));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/libpar2internal.h:221:
src/galois.h:57:7: note: 'ReedSolomon<Galois<8, 285, unsigned char> >::G' {aka 'class Galois<8, 285, unsigned char>'} declared here
   57 | class Galois
      |       ^~~~~~
src/reedsolomon.h:271:11: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'ReedSolomon<Galois<8, 285, unsigned char> >::G' {aka 'class Galois<8, 285, unsigned char>'} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
  271 |     memset(rightmatrix, 0, outcount *outcount * sizeof(G));
      |     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/galois.h:57:7: note: 'ReedSolomon<Galois<8, 285, unsigned char> >::G' {aka 'class Galois<8, 285, unsigned char>'} declared here
   57 | class Galois
      |       ^~~~~~
depbase=`echo src/par1repairersourcefile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par1repairersourcefile.o -MD -MP -MF $depbase.Tpo -c -o src/par1repairersourcefile.o src/par1repairersourcefile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2creator.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2creator.o -MD -MP -MF $depbase.Tpo -c -o src/par2creator.o src/par2creator.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2creatorsourcefile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2creatorsourcefile.o -MD -MP -MF $depbase.Tpo -c -o src/par2creatorsourcefile.o src/par2creatorsourcefile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2fileformat.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2fileformat.o -MD -MP -MF $depbase.Tpo -c -o src/par2fileformat.o src/par2fileformat.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/par2repairer.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2repairer.o -MD -MP -MF $depbase.Tpo -c -o src/par2repairer.o src/par2repairer.cpp &&\
mv -f $depbase.Tpo $depbase.Po
src/par2repairer.cpp: In member function 'bool Par2Repairer::LoadPacketsFromFile(std::string)':
src/par2repairer.cpp:589:10: warning: unused variable 'success' [-Wunused-variable]
  589 |     bool success = diskFileMap.Insert(diskfile);
      |          ^~~~~~~
src/par2repairer.cpp: In lambda function:
src/par2repairer.cpp:1308:14: warning: unused variable 'success' [-Wunused-variable]
 1308 |         bool success = diskFileMap.Insert(diskfile);
      |              ^~~~~~~
src/par2repairer.cpp: In lambda function:
src/par2repairer.cpp:1381:16: warning: unused variable 'success' [-Wunused-variable]
 1381 |           bool success = diskFileMap.Insert(diskfile);
      |                ^~~~~~~
src/par2repairer.cpp: In member function 'bool Par2Repairer::RenameTargetFiles()':
src/par2repairer.cpp:2207:12: warning: unused variable 'success' [-Wunused-variable]
 2207 |       bool success = diskFileMap.Insert(targetfile);
      |            ^~~~~~~
src/par2repairer.cpp:2239:12: warning: unused variable 'success' [-Wunused-variable]
 2239 |       bool success = diskFileMap.Insert(targetfile);
      |            ^~~~~~~
src/par2repairer.cpp: In member function 'bool Par2Repairer::CreateTargetFiles()':
src/par2repairer.cpp:2288:12: warning: unused variable 'success' [-Wunused-variable]
 2288 |       bool success = diskFileMap.Insert(targetfile);
      |            ^~~~~~~
depbase=`echo src/par2repairersourcefile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/par2repairersourcefile.o -MD -MP -MF $depbase.Tpo -c -o src/par2repairersourcefile.o src/par2repairersourcefile.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/recoverypacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/recoverypacket.o -MD -MP -MF $depbase.Tpo -c -o src/recoverypacket.o src/recoverypacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/reedsolomon.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/reedsolomon.o -MD -MP -MF $depbase.Tpo -c -o src/reedsolomon.o src/reedsolomon.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/verificationhashtable.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/verificationhashtable.o -MD -MP -MF $depbase.Tpo -c -o src/verificationhashtable.o src/verificationhashtable.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/verificationpacket.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/verificationpacket.o -MD -MP -MF $depbase.Tpo -c -o src/verificationpacket.o src/verificationpacket.cpp &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo src/libpar2.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -pthread  -g -O2 -MT src/libpar2.o -MD -MP -MF $depbase.Tpo -c -o src/libpar2.o src/libpar2.cpp &&\
mv -f $depbase.Tpo $depbase.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-controller.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-controller.Tpo -c -o parpar/gf16/libparpar_gf16_a-controller.o `test -f 'parpar/gf16/controller.cpp' || echo './'`parpar/gf16/controller.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-controller.Tpo parpar/gf16/.deps/libparpar_gf16_a-controller.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-controller_cpu.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-controller_cpu.Tpo -c -o parpar/gf16/libparpar_gf16_a-controller_cpu.o `test -f 'parpar/gf16/controller_cpu.cpp' || echo './'`parpar/gf16/controller_cpu.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-controller_cpu.Tpo parpar/gf16/.deps/libparpar_gf16_a-controller_cpu.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_a-gfmat_coeff.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gfmat_coeff.Tpo -c -o parpar/gf16/libparpar_gf16_a-gfmat_coeff.o `test -f 'parpar/gf16/gfmat_coeff.c' || echo './'`parpar/gf16/gfmat_coeff.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gfmat_coeff.Tpo parpar/gf16/.deps/libparpar_gf16_a-gfmat_coeff.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-gfmat_inv.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gfmat_inv.Tpo -c -o parpar/gf16/libparpar_gf16_a-gfmat_inv.o `test -f 'parpar/gf16/gfmat_inv.cpp' || echo './'`parpar/gf16/gfmat_inv.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-gfmat_inv.Tpo parpar/gf16/.deps/libparpar_gf16_a-gfmat_inv.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-gf16pmul.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16pmul.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16pmul.o `test -f 'parpar/gf16/gf16pmul.cpp' || echo './'`parpar/gf16/gf16pmul.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16pmul.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16pmul.Po
g++ -std=c++11 -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -std=c++11 -g -O2 -MT parpar/gf16/libparpar_gf16_a-gf16mul.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16mul.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16mul.o `test -f 'parpar/gf16/gf16mul.cpp' || echo './'`parpar/gf16/gf16mul.cpp
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16mul.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16mul.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_a-gf16_lookup.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16_lookup.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16_lookup.o `test -f 'parpar/gf16/gf16_lookup.c' || echo './'`parpar/gf16/gf16_lookup.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16_lookup.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16_lookup.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_a-gf_add_generic.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf_add_generic.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf_add_generic.o `test -f 'parpar/gf16/gf_add_generic.c' || echo './'`parpar/gf16/gf_add_generic.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf_add_generic.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf_add_generic.Po
gcc -DHAVE_CONFIG_H -I.  -Iparpar/gf16 -Iparpar/gf16/opencl-include -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16  -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_a-gf16_cksum_generic.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_a-gf16_cksum_generic.Tpo -c -o parpar/gf16/libparpar_gf16_a-gf16_cksum_generic.o `test -f 'parpar/gf16/gf16_cksum_generic.c' || echo './'`parpar/gf16/gf16_cksum_generic.c
mv -f parpar/gf16/.deps/libparpar_gf16_a-gf16_cksum_generic.Tpo parpar/gf16/.deps/libparpar_gf16_a-gf16_cksum_generic.Po
rm -f libparpar_gf16.a
ar cr libparpar_gf16.a parpar/gf16/libparpar_gf16_a-controller.o parpar/gf16/libparpar_gf16_a-controller_cpu.o parpar/gf16/libparpar_gf16_a-gfmat_coeff.o parpar/gf16/libparpar_gf16_a-gfmat_inv.o parpar/gf16/libparpar_gf16_a-gf16pmul.o parpar/gf16/libparpar_gf16_a-gf16mul.o parpar/gf16/libparpar_gf16_a-gf16_lookup.o parpar/gf16/libparpar_gf16_a-gf_add_generic.o parpar/gf16/libparpar_gf16_a-gf16_cksum_generic.o
ranlib libparpar_gf16.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_sse2_a-gf16_xor_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_xor_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf16_xor_sse2.o `test -f 'parpar/gf16/gf16_xor_sse2.c' || echo './'`parpar/gf16/gf16_xor_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_xor_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_xor_sse2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_sse2_a-gf16_lookup_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_lookup_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf16_lookup_sse2.o `test -f 'parpar/gf16/gf16_lookup_sse2.c' || echo './'`parpar/gf16/gf16_lookup_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_lookup_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_lookup_sse2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_sse2_a-gf_add_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf_add_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf_add_sse2.o `test -f 'parpar/gf16/gf_add_sse2.c' || echo './'`parpar/gf16/gf_add_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf_add_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf_add_sse2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_sse2_a-gf16_cksum_sse2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_cksum_sse2.Tpo -c -o parpar/gf16/libparpar_gf16_sse2_a-gf16_cksum_sse2.o `test -f 'parpar/gf16/gf16_cksum_sse2.c' || echo './'`parpar/gf16/gf16_cksum_sse2.c
mv -f parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_cksum_sse2.Tpo parpar/gf16/.deps/libparpar_gf16_sse2_a-gf16_cksum_sse2.Po
rm -f libparpar_gf16_sse2.a
ar cr libparpar_gf16_sse2.a parpar/gf16/libparpar_gf16_sse2_a-gf16_xor_sse2.o parpar/gf16/libparpar_gf16_sse2_a-gf16_lookup_sse2.o parpar/gf16/libparpar_gf16_sse2_a-gf_add_sse2.o parpar/gf16/libparpar_gf16_sse2_a-gf16_cksum_sse2.o
ranlib libparpar_gf16_sse2.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.Tpo -c -o parpar/gf16/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.o `test -f 'parpar/gf16/gf16_shuffle_ssse3.c' || echo './'`parpar/gf16/gf16_shuffle_ssse3.c
mv -f parpar/gf16/.deps/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.Tpo parpar/gf16/.deps/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.Po
rm -f libparpar_gf16_ssse3.a
ar cr libparpar_gf16_ssse3.a parpar/gf16/libparpar_gf16_ssse3_a-gf16_shuffle_ssse3.o
ranlib libparpar_gf16_ssse3.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx_a-gf16_shuffle_avx.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx_a-gf16_shuffle_avx.Tpo -c -o parpar/gf16/libparpar_gf16_avx_a-gf16_shuffle_avx.o `test -f 'parpar/gf16/gf16_shuffle_avx.c' || echo './'`parpar/gf16/gf16_shuffle_avx.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx_a-gf16_shuffle_avx.Tpo parpar/gf16/.deps/libparpar_gf16_avx_a-gf16_shuffle_avx.Po
rm -f libparpar_gf16_avx.a
ar cr libparpar_gf16_avx.a parpar/gf16/libparpar_gf16_avx_a-gf16_shuffle_avx.o
ranlib libparpar_gf16_avx.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx2_a-gf16_xor_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_xor_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf16_xor_avx2.o `test -f 'parpar/gf16/gf16_xor_avx2.c' || echo './'`parpar/gf16/gf16_xor_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_xor_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_xor_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx2_a-gf16_shuffle_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_shuffle_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf16_shuffle_avx2.o `test -f 'parpar/gf16/gf16_shuffle_avx2.c' || echo './'`parpar/gf16/gf16_shuffle_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_shuffle_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_shuffle_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx2_a-gf_add_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf_add_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf_add_avx2.o `test -f 'parpar/gf16/gf_add_avx2.c' || echo './'`parpar/gf16/gf_add_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf_add_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf_add_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx2_a-gf16_cksum_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_cksum_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_avx2_a-gf16_cksum_avx2.o `test -f 'parpar/gf16/gf16_cksum_avx2.c' || echo './'`parpar/gf16/gf16_cksum_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_cksum_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_avx2_a-gf16_cksum_avx2.Po
rm -f libparpar_gf16_avx2.a
ar cr libparpar_gf16_avx2.a parpar/gf16/libparpar_gf16_avx2_a-gf16_xor_avx2.o parpar/gf16/libparpar_gf16_avx2_a-gf16_shuffle_avx2.o parpar/gf16/libparpar_gf16_avx2_a-gf_add_avx2.o parpar/gf16/libparpar_gf16_avx2_a-gf16_cksum_avx2.o
ranlib libparpar_gf16_avx2.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx512_a-gf16_xor_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_xor_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf16_xor_avx512.o `test -f 'parpar/gf16/gf16_xor_avx512.c' || echo './'`parpar/gf16/gf16_xor_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_xor_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_xor_avx512.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx512_a-gf16_shuffle_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_shuffle_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf16_shuffle_avx512.o `test -f 'parpar/gf16/gf16_shuffle_avx512.c' || echo './'`parpar/gf16/gf16_shuffle_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_shuffle_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_shuffle_avx512.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx512_a-gf_add_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf_add_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf_add_avx512.o `test -f 'parpar/gf16/gf_add_avx512.c' || echo './'`parpar/gf16/gf_add_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf_add_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf_add_avx512.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_avx512_a-gf16_cksum_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_cksum_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_avx512_a-gf16_cksum_avx512.o `test -f 'parpar/gf16/gf16_cksum_avx512.c' || echo './'`parpar/gf16/gf16_cksum_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_cksum_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_avx512_a-gf16_cksum_avx512.Po
rm -f libparpar_gf16_avx512.a
ar cr libparpar_gf16_avx512.a parpar/gf16/libparpar_gf16_avx512_a-gf16_xor_avx512.o parpar/gf16/libparpar_gf16_avx512_a-gf16_shuffle_avx512.o parpar/gf16/libparpar_gf16_avx512_a-gf_add_avx512.o parpar/gf16/libparpar_gf16_avx512_a-gf16_cksum_avx512.o
ranlib libparpar_gf16_avx512.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.Tpo -c -o parpar/gf16/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.o `test -f 'parpar/gf16/gf16_shuffle_vbmi.c' || echo './'`parpar/gf16/gf16_shuffle_vbmi.c
mv -f parpar/gf16/.deps/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.Tpo parpar/gf16/.deps/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.Po
rm -f libparpar_gf16_vbmi.a
ar cr libparpar_gf16_vbmi.a parpar/gf16/libparpar_gf16_vbmi_a-gf16_shuffle_vbmi.o
ranlib libparpar_gf16_vbmi.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_gfni_a-gf16_affine_gfni.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_a-gf16_affine_gfni.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_a-gf16_affine_gfni.o `test -f 'parpar/gf16/gf16_affine_gfni.c' || echo './'`parpar/gf16/gf16_affine_gfni.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_a-gf16_affine_gfni.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_a-gf16_affine_gfni.Po
rm -f libparpar_gf16_gfni.a
ar cr libparpar_gf16_gfni.a parpar/gf16/libparpar_gf16_gfni_a-gf16_affine_gfni.o
ranlib libparpar_gf16_gfni.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.o `test -f 'parpar/gf16/gf16_affine_avx2.c' || echo './'`parpar/gf16/gf16_affine_avx2.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/src/libparpar_gf16_gfni_avx2_a-platform_warnings.o -MD -MP -MF parpar/src/.deps/libparpar_gf16_gfni_avx2_a-platform_warnings.Tpo -c -o parpar/src/libparpar_gf16_gfni_avx2_a-platform_warnings.o `test -f 'parpar/src/platform_warnings.c' || echo './'`parpar/src/platform_warnings.c
mv -f parpar/src/.deps/libparpar_gf16_gfni_avx2_a-platform_warnings.Tpo parpar/src/.deps/libparpar_gf16_gfni_avx2_a-platform_warnings.Po
rm -f libparpar_gf16_gfni_avx2.a
ar cr libparpar_gf16_gfni_avx2.a parpar/gf16/libparpar_gf16_gfni_avx2_a-gf16_affine_avx2.o parpar/src/libparpar_gf16_gfni_avx2_a-platform_warnings.o
ranlib libparpar_gf16_gfni_avx2.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.o `test -f 'parpar/gf16/gf16_affine_avx512.c' || echo './'`parpar/gf16/gf16_affine_avx512.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.Po
rm -f libparpar_gf16_gfni_avx512.a
ar cr libparpar_gf16_gfni_avx512.a parpar/gf16/libparpar_gf16_gfni_avx512_a-gf16_affine_avx512.o
ranlib libparpar_gf16_gfni_avx512.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.o `test -f 'parpar/gf16/gf16_affine_avx10.c' || echo './'`parpar/gf16/gf16_affine_avx10.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.Po
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16    -D_POSIX_C_SOURCE=200112L -D_DARWIN_C_SOURCE -D_GNU_SOURCE -D_DEFAULT_SOURCE -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_gfni_avx10_a-gf_add_avx10.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf_add_avx10.Tpo -c -o parpar/gf16/libparpar_gf16_gfni_avx10_a-gf_add_avx10.o `test -f 'parpar/gf16/gf_add_avx10.c' || echo './'`parpar/gf16/gf_add_avx10.c
mv -f parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf_add_avx10.Tpo parpar/gf16/.deps/libparpar_gf16_gfni_avx10_a-gf_add_avx10.Po
rm -f libparpar_gf16_gfni_avx10.a
ar cr libparpar_gf16_gfni_avx10.a parpar/gf16/libparpar_gf16_gfni_avx10_a-gf16_affine_avx10.o parpar/gf16/libparpar_gf16_gfni_avx10_a-gf_add_avx10.o
ranlib libparpar_gf16_gfni_avx10.a
gcc -DHAVE_CONFIG_H -I.  -Wall -DNDEBUG -DPARPAR_ENABLE_HASHER_MD5CRC -DPARPAR_INVERT_SUPPORT -DPARPAR_SLIM_GF16   -g -O2 -std=c99 -MT parpar/gf16/libparpar_gf16_clmul_a-gf16pmul_sse.o -MD -MP -MF parpar/gf16/.deps/libparpar_gf16_clmul_a-gf16pmul_sse.Tpo -c -o parpar/gf16/libparpar_gf16_clmul_a-gf16pmul_sse.o `test -f 'parpar/gf16/gf16pmul_sse.c' || echo './'`parpar/gf16/gf16pmul_sse.c
In file included from parpar/gf16/gf16pmul_sse.c:1:
parpar/gf16/gf16_global.h: In function 'gf16_finish_packed':
parpar/gf16/../src/platform.h:303:49: error: implicit declaration of function 'posix_memalign' [-Wimplicit-function-declaration]
  303 |         #define ALIGN_ALLOC(buf, len, align) if(posix_memalign((void**)&(buf), align < sizeof(void*) ? sizeof(void*) : align, (len))) (buf) = NULL
      |                                                 ^~~~~~~~~~~~~~
parpar/gf16/gf16_global.h:251:25: note: in expansion of macro 'ALIGN_ALLOC'
  251 |                         ALIGN_ALLOC(checksum, blockLen, accessAlign);
      |                         ^~~~~~~~~~~
make[1]: *** [Makefile:2327: parpar/gf16/libparpar_gf16_clmul_a-gf16pmul_sse.o] Error 1
make[1]: Leaving directory '/config.guess_from_savanah_________par2cmdline-turbo'
make: *** [Makefile:1353: all] Error 2
Command exited with non-zero status 2
real    9m 13.35s
user    8m 15.38s
sys     0m 55.90s
/config.guess_from_savanah_________par2cmdline-turbo #
animetosho commented 3 months ago

Oops, looks like I missed a few things.

Could you please try again? Thanks!

sanderjo commented 3 months ago

The good news: the full make sequence works without errors. The bad news: not any rvv vector commands in the resulting binary?! At least, now nothing in this check:

/par2cmdline-turbo # objdump -d par2 | awk '{ print $3 }' | sort | uniq -c | grep " v"
/par2cmdline-turbo # 
/par2cmdline-turbo # 

and

/par2cmdline-turbo # objdump -d par2   | grep $'\tv'
/par2cmdline-turbo # 

I've included the full output as an .txt attachment

If you want: I can give you access to the RISCV64 machine, via IPv6.

par2cmdline-turbo_2024-08-16.txt

EDIT: again, without knowledge, just grepping:

In the yesterday's make / compile parameters, I do see-march=rv64gc_zbkc
But the log of today: no -march=rv64gc_zbkc , altough still checking whether C compiler accepts -march=rv64gc_zbkc... yes

animetosho commented 3 months ago

Gah, this is fiddly.

Hopefully I got it right this time. Can you retest?
Thanks!

sanderjo commented 3 months ago

Bingo ... the make-sequence works, and there are rvv commands in the resulting par2 binary!

Thank you!

Full build log: par2cmdline-turbo-riscv64---build-in-docker.txt

My build process / Dockerfile is now quite clean (except for the config.guess stuff):

FROM alpine:edge
LABEL maintainer="sanderjo"

RUN \
    echo "**** install packages ****" && \
    apk add curl gcc g++ make automake autoconf git && \

    cd /tmp && \
    git clone https://github.com/animetosho/par2cmdline-turbo.git && \
    cd par2cmdline-turbo/ && \
    cp /usr/share/autoconf/build-aux/config.guess . && \
    cp /usr/share/autoconf/build-aux/config.sub . && \
    ./automake.sh && \
    ./configure && \
    make -j3 && \
    ./par2 --version && \
    objdump -d par2 | awk '{ print $3 }'  | sort | uniq -c | grep " v" && \
    make install
animetosho commented 3 months ago

Excellent, thanks again for all the testing!