Cygwin and which version of gcc?


Cygwin has updated to gcc 3.4 as a default a while ago (after bug fixes were put in, some prompted by Root users). On your download page, you say that the binaries are built with gcc 3.3. Is this a mistake or is it really build with 3.3 and not 3.4? If you are using 3.3, why?


We are building the cygwin version with gcc3.4 since a long time.
I forgot to update the web page. Now done, thanks for the remark.


Hi Rene,

Good to know. :smiley:

Question: I know that root with gcc 3.3 under cygwin had “issues” - hence the warning on the download page. My understanding is that most (all?) of those issues had been resolved. Is that true? If so, do you still need the warnings?


p.s. I understand that using the Microsoft compiler is faster on the “micro” level, but not having to change my build environment at all when going back and forth between linux and Windows is faster on the “macro” scale.

We see a typical factor 2 better performance with VC++ comared to cygwin/gcc. eg

time root -b -q

VC++7.1 0.4s
cygwin/gcc 4.99s

root -b -q benchmarks.C

VC++7.1 RT=4.77s CP= 3.25s
cygwin/gcc RT=14.02s CP= 6.04s

stress -b 30

VC++7.1 CP= 10.53s
cygwin/gcc CP= 23.37s

and the same ratio observed with most other benchmarks and test programs.

These results on an IBM R40 Thinkpad. Both versions compiled in optimiz ed mode.


Hi Rene,

I agree that if I was using Windows as a platform for doing my whole analysis, that this speed difference is important (and should be advertised). But for many of us, we develop on one computer and then launch jobs on (literally) thousands of different computers.

In this case, not getting caught with bugs because we are changing from a windows environment to a posix environment is worth the hit I’m taking in execution time. Not to mention that I can run root on a windows machine in a local xterm, compile inside of emacs, etc.

If it is now just a question of speed, then it would seem to make more sense to update the warnings to simply say that.