My laptop usually has a 32 bit GNU / Linux install and a 64 bit install also.
It pays to remember which you are logged into when using openpfgw
-su: ./pfgw64: cannot execute binary file
The answer as to why you might get that response is simple, however it is easy to mistake the symptom.
Running off and websearching 'cannot execute binary file', was the wrong thing to do, and assuming that 'su' was somehow broken was a red herring.
Logging into a console as root and running ./pfgw64 gives a more meaningful:
-bash: ./pfgw64: cannot execute binary file
...which should be enough to tell you that the problem is not 'su', which in my case is just sitting in front of bash and relaying the message.
I hinted at the real cause earlier. Running ./pfgw32 will see a better result, because you are logged into a 32 bit system!
It is great that openpfgw provide optimised binaries for 32 bit and 64 bit, and it is up to you, as the user, to select the correct one!
Remember that openpfgw will also needs some libgmp libraries in order to run, otherwise expect a complaint about a missing .so file.