There are not 2 copies, but 3...
Maybe more, but I know at least of 3.
Two of them have the "genuine" tool name as for example
gcc, and one has the tool name prepended with
mingw-.
I think the latter has to do with gcc's ability for cross-compilation, and no idea about the former. But yes, indeed... you'll have to ask the MinGW guys, since we really don't know.
While you're asking this, you might add the question why most paths are set like that:
c:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../mingw32/bin/mingw32/3.4.5/intead of more concise representations (plus, the forementioned search path doesn't even exist, what seems to be the case for about 50% of search paths...).
It is only a vague guess, but I think MinGW could be made noticeably faster without having to change any code, simply by using search path layouts that don't go up and down the filesystem and by only using search paths that actually exist. I have no figures how much overhead exactly we're talking about here, but if you include, say, 500 header files (think of
#include <wx.h>), it might be quite something.