Skip to content

Quickstart How to Build

Franco Corbelli edited this page Sep 3, 2023 · 3 revisions

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)
Clone this wiki locally