Quickstart How to Build - fcorbelli/zpaqfranz GitHub Wiki
My main development platforms are AMD Windows (non-Intel Windows (arm) currently unsupported) and Intel FreeBSD.
I rarely use Linux or MacOS or whatever (for compiling), so fixing may be needed.
I support only g++/clang++, no Visual C++ or others, sorry
You need it for ESXi too, even if it doesn't work. Don't be afraid, zpaqfranz knows!
Library dependencies are minimal: libc,libc++,libcxxrt,libm,libgcc_s,libthr
DEFINEs at compile-time: IT IS UP TO YOU NOT TO MIX LOGICAL INCOMPATIBLE DEFINITIONS!
As explained the program is single file, be careful to link the pthread library.
(nothing) // Compile for INTEL Windows
-DHWBLAKE3 blake3_windows_gnu.S // On Win64 enable HW accelerated BLAKE3 (with assembly)
-DHWSHA1 // On Win64 enable HW SHA1 (-flaghw)
-DHWSHA2 // Enable HW SHA2 (without assembly code to be linked)
-Dunix // Compile on "something different from Windows"
-DSOLARIS // Solaris is similar, but not equal, to BSD Unix
-DNOJIT // By default zpaqfranz works on Intel CPUs
// (for simplicity I'll call them Intel, meaning x86-SSE2 and amd64)
// On non-Intel a -NOJIT should runs fine on LITTLE ENDIANs
// like Linux aarch64, Android aarch64 etc
// On BIG ENDIAN or "strange things" like middle endian
// (Honeywell 316) or little word (PDP-11)
// the autotest command is for you :)
// https://gcc.gnu.org/legacy-ml/gcc-help/2007-07/msg00343.html
-DANCIENT // Turn off some functions for compiling in very old systems
// consuming less RAM (ex. PowerPC Mac), no auto C++
-DBIG // Turn on BIG ENDIAN at compile time
-DDEBUG // Old 7.15, almost useless. Use -debug switch instead
-DESX // Yes, zpaqfranz run (kind of) on ESXi too :-)
-DALIGNMALLOC // Force malloc to be aligned at something (sparc64)
-DSERVER // Enable the cloudpaq client (for Windows)
-DGUI // Enable the "gui" (console ncurses on Windows)