Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Am I the only one...

Name: Anonymous 2005-10-22 10:12

who thinks GCC sucks? Not the compiling engine, but the interface to it. It's made of confusing, illogical, error prone options with stupid default values, and the idea of calling everyone and their mother itself (and mix everyone's options together) is as bad as penis cancer. For example, -s is passed directly to the linker, yet -rpath isn't; -Wall and most of -Wstuff controls warnings, yet -Wl is some kind of hack to pass comma-separated arguments to the linker, especially the ones not supported by gcc; etc. Whoever did this has a disturbed mind. And I think I know who did this.

Anyways, is there a sane interface which provides completely separate, non-automagical preprocessor+compiler, assembler, and linker, with well thought out options?

Name: Anonymous 2005-10-27 6:07

>>22
Uh, I don't think you understand. The -O2 and -O3 options are already a mix of options that will give you best performance for the general case in a safe manner. All those other switches? They're not guaranteed to work. -march is one of the very few, and even so, it's useless if you're making a general binary.

The only way to do what you suggest is to make the compiler put in profiling machanisms, you run the software a few dozen times in general usage, and you feed the profiling data back for a final compile. Even so, that'll be tailored to your usage patterns, and unless you're willing to do this a few dozen times, it still won't find the optimal set of switches. This of course also ignores that profiling will also alter the performance characteristics of the software.

You think the GCC folks wouldn't have added such a switch already if it were possible?

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List