Rainer Emrich wrote:
I'm using gmake 3.80 and it's the first time that I see this kind of problem. As you say there's no such option "-f " in the xgcc command.
The gcc driver has support to convert arbitrary long options into -f options. So for instance --test-coverage gets converted to -ftest-coverage. See the last entry of the option_map table which performs this magic. This was added for POSIX support, as POSIX has some special rules for how command line options work, but -- options are always safe in POSIX.
If you have something like "--<special-character>" on the command line, the gcc driver would convert that to a -f option, and then cc1 would complain that "-f<special-character>" is not a recognized option. It does look like you have some spurious -- characters on your gcc command line. Maybe one of them is followed by a non-printing non-white space character?
I wonder if this -- to -f conversion feature is documented anywhere. It probably isn't. Also, the option_map table is probably long out of date, because it is supposed to list every option that doesn't start with -f, or which requires arguments. Otherwise, gcc won't be fully compliant with the POSIX rules for command line arguments.
-- Jim Wilson, GNU Tools Support, http://www.specifix.com