g++ -o bin/ftie-cli -std=c++17 ftie/*.h ftie/*.cpp main.cpp `libpng-config --ldflags` -lgmpxx -lgmp
On macOS with Homebrew, Clang doesn't search /opt/homebrew by default and also errors on the ftie/*.h
glob when treated as separate translation units, so use instead:
g++ -o bin/ftie-cli -std=c++17 -I/opt/homebrew/include -L/opt/homebrew/lib ftie/*.cpp main.cpp `libpng-config --cflags --ldflags` -lgmpxx -lgmp
g++ (Ubuntu 8-20180424-0ubuntu1~16.04.1) 8.0.1 20180424 (experimental) [trunk revision 259590]png++-0.2.9gmp/gmpxx(arbitrary-precision arithmetic for the BBS modulus) —brew install gmpon macOS, or thelibgmp-devpackage on Linux.
P/Q need to be ~1024-bit primes congruent to 3 mod 4 (so the BBS modulus P*Q is ~2048 bits). Generate
one at a time:
./bin/ftie-cli genprime 1024
Run it twice to get distinct P and Q, then pass the printed decimal values as CLI args to encrypt/decrypt.

