GCC 3.4.0 Released
AaronW writes "While checking the GCC website I saw that GCC version 3.4 was officially released on April 18th. Version 3.4 includes numerous changes and enhancements, including better optimization, and the ability to build a profiled version of gcc which is 7.5-11% faster on i386 hardware. Be kind and please use one of the mirror sites."
This announcement is premature, it's still propagating to mirrors; the "announcment" is an error. The official release will be tomorrow.
Human/Ranger/Zangband
Yes! Precompiled headers will be miiiiiiiiine!!!!!
See you, space cowboy...
"precompiled announcements"
is still using a 386 anymore??? Get with the times, gcc! ;)
four nine eighteen twenty-7 thirty-nine forty-7 fiftyeight sixty-nine seventy-9 eighty-8 one-hundred-and-nine one-twenty
Ideally no one would have noticed until tomorrow, when the official announcement will go out..
/., did they?
They did not think about
Has the ability to profile shared libraries been fixed? I have tried to do this, and even if you compile a shared library with -pg, and specify it in the LD_PROFILE environment variable, the resulting profile file cannot be processed by gprof V2.4 - instead you get "error: unsupported profile revision 131,071"
I *really* need to profile a shared library, and building it as a staticly linked executable is not an option.
www.eFax.com are spammers
Could someone explain how well does the gcj Java compiler work? I hear that AWT and Swing are not really usable, so how well does it work with SWT or maybe even wxWidgets?
I'm currently in the process of choosing the language/tools for a cross platform app (open source, of course) and I've narrowed the selection down to Java+gcj and c++. Native executables & widgets are a must, since my target audince most likely won't have a JVM installed.
If you run across them, be sure to thank Paolo Carlini, Petur Runolfsson, and Jerry Quinn for making 3.4 iostreams as fast as (and often faster than) Glibc's stdio. Thank them, too for making filebuf support large files (>2G) natively without any code or build changes needed, on any target that allows them.
Worth noting, too, is that this is the first release in which the library is part of the ABI. Every previous release since 2.95 has had to increment the libstdc++.so version number, but future 3.4 (and maybe 3.5) releases should be backward compatible. Ask your distribution maintainers to ship 3.4-built versions of all C++ libraries they package, so that they will be compatible with programs built with this and future releases.
They broke binary compatibility in gcc 3.0, and again in 3.2, and now in 3.4.
What do you think the outlook is for binary compatibility with 3.6?
Stupid job ads, weird spam, occasional insight at
FWIW: I have done some app development on Linux using Java compiled with GCJ with UI provided by QT (through the KDEBindings package). I found it worked quite well, and the app was very responsive (didn't feel nearly as clunky as Swing apps often do).
My only complaint was that the occasional completely random feature seemed not to work, as though they had missed a few bindings.. I can't think of any examples, but it was nothing serious.
Well, these guys, these guys, and these guys seem to have no trouble selling 386-based hardware. Not everybody needs the full feature set (or the cost and power requirements) of a Pentium.
Has anybody done the work to setup PCH in a project built with the standard GNU Makefile tools autoconf/make/header? I tried it once, but didn't see a good solution to get the dependencies right. Of course, genuine support for it by automake would be great.
6) No screenshots
OK I know this is just idle curiosity but I think a general comparison between Microsoft's new offering, Borland's Free command line tools, Open Watcom and GCC might be interesting.
Nothing in the world is more dangerous than sincere ignorance and conscientious stupidity.
Gnome has been doing this as well and as far as I can tell they are fairly major. :)
I'm very pleased to see that "#pragma once" has been rewritten and undeprecated in this new release of GCC.
That makes it easier for me to port Visual C++ code to GCC.
Thanks a lot.
Tom.
Precompiled headers were disabled FOR CAUSE in this version.
There are some known defects in the current precompiled header implementation that will result in compiler crashes in relatively rare situations. Therefore, precompiled headers should be considered a "technology preview" in this release.
Well, you are wrong in a number of ways:
1) Like you already noticed yourself, GCC doesn't have the even/odd numbered version logic of Linux. Each version number is a release version. Development versions have the next release version with a date attached to the version. The development process is formalized and is described here
2) GCC 3.4 is a regular new version with a number of new features. It is certainly not a minor version with just some compile speed tuning. I would consider the changes from 3.3 to 3.4 bigger than the previous changes from 3.2 to 3.3.
3) The real oddball in the GCC 3.x series is GCC 3.2.x. This is just a bugfix version of GCC 3.1. However as some of the bugs fixed were a major C++ ABI issue and fixing those bugs lead to incompatibility, the GCC developers decicded to exceptionally increment the version number not following the regular release scheme.
Marcel