A lot of Gnumeric dlls contains a lot of junk, which can be easily ripped off with GNU strip program (part of GCC package)
With magic of strip ( run in command line: for /r x:\gnumeric\files\directory\ %a in (*.exe *.dll) do @strip -s "%a"
) 166Mb of original Gnumeric installation becomes only 44Mb!
And UPX helps us to reduce Gnumeric size to 34Mb.
Further user can delete all unused translations (stored in \share\locale directory) and save about 15Mb, so final size comes to 18-19Mb.
In comparison PA.c-version takes about 71Mb (as written here: https://portableapps.com/apps/office/gnumeric_portable)
I'm using it for some time without any bugs with simple spredsheets but some testing is required in case of applying of this method to PA.c-version
P.S.
This method is usable with other programs compiled with gcc but sometime leads to crashes, so use it carefully.