But even under FreeBSD (not sure about Linux - untested), if you use ports to install binutils, it doesn't include the windres binary (I guess it's too Windows centric). I have to download the binutils source code and manually compile the windres binary, then copy that into /usr/local/bin before FPC finds and uses it.
Well, reading
this this gives an answer as to the why:
Warning: windres is not always built as part of the binary utilities, since it is only useful for Windows targets.
I understand your frustration though...
It is usually a pita to maintain/develop the platforms that are not part fo the big 3 (and by seeing the post on the forums/bugreports, i guess even the big two or sometimes even the big one).
I often find myself setting up obscure toolchains (not referring to gnu here) that requires a load of maintenance to even get them to work (or usually, don't even work at all) or find/try alternative approaches that might be able to speed things up.
Even when you find targets that have nothing to do with windows, linux or mac, there are those developers that still find a way to restrict themselves to compile their toolchain/utils with MSVC or other platform specific tools.
In this day and age you need to have a fair understanding and/or have several different installations of .net, java, python, ruby, lua, VC, mingw, cygwin, etc. to even get you started. And that is only to be able to have a (cross-)toolchain working for you. Thank heavens for VM's.
The hardship that belongs to choosing 'obscure' targets, i guess :-)