C Board  

Go Back   C Board > Community Boards > Tech Board

Reply
 
LinkBack Thread Tools Display Modes
Old 04-02-2009, 11:19 AM   #1
Registered User
 
Join Date: Dec 2006
Location: Canada
Posts: 2,012
GCC 4.4.0 released!

GCC, the GNU Compiler Collection - GNU Project - Free Software Foundation (FSF)

Quote:
Current release series: GCC 4.4.0
Status: 2009-03-13 (regression fixes and docs only).
Serious regressions. All regressions.
Previous release series: GCC 4.3.3
Status: 2009-01-24 (regression fixes and docs only).
Serious regressions. All regressions.
Active development: GCC 4.5.0 (changes)
Status: Stage 1, open for development.
Serious regressions. All regressions.
I will try building a MinGW distribution some time later (and possibly x86-64 cross-compiler, too).
cyberfish is offline   Reply With Quote
Old 04-02-2009, 02:11 PM   #2
Senior software engineer
 
brewbuck's Avatar
 
Join Date: Mar 2007
Location: Portland, OR
Posts: 5,768
Now if only the GNU ld guys would get on the ball and fix the core dump I've been seeing for three years...
__________________
"Congratulations on your purchase. To begin using your quantum computer, set the power switch to both off and on simultaneously." -- raftpeople@slashdot
brewbuck is offline   Reply With Quote
Old 04-02-2009, 03:27 PM   #3
Registered User
 
Join Date: Dec 2006
Location: Canada
Posts: 2,012
Hmm for some reason 4.4.0 is not up on the GNU FTP and mirrors yet. Guess we still have to wait a bit, or SVN it.
cyberfish is offline   Reply With Quote
Old 04-02-2009, 05:46 PM   #4
and the hat of sweating
 
Join Date: Aug 2007
Location: Toronto, ON
Posts: 3,285
So what's new in 4.4?
__________________
"I am probably the laziest programmer on the planet, a fact with which anyone who has ever seen my code will agree." - esbo, 11/15/2008

"the internet is a scary place to be thats why i dont use it much." - billet, 03/17/2010
cpjust is offline   Reply With Quote
Old 04-02-2009, 05:51 PM   #5
Registered User
 
Join Date: Dec 2006
Location: Canada
Posts: 2,012
GCC 4.4 Release Series — Changes, New Features, and Fixes - GNU Project - Free Software Foundation (FSF)

Mostly optimizations from what I heard, with a new register allocator (IRA).

And more C++0x stuff of course (including <thread>!).
cyberfish is offline   Reply With Quote
Old 04-03-2009, 08:27 AM   #6
Malum in se
 
abachler's Avatar
 
Join Date: Apr 2007
Posts: 3,188
yeah, no direct download though, which is one thign that always ........es me off about open source, as if everyone is going to go through the trouble of setting up an SVN directory for every project they download. I mean for sciences sake, at least rar the ........ers up and give people a direct link, not a link to a mirror that doesnt respond.
__________________
Until you can build a working general purpose reprogrammable computer out of basic components from radio shack, you are not fit to call yourself a programmer in my presence. This is cwhizard, signing off.
abachler is offline   Reply With Quote
Old 04-03-2009, 08:34 AM   #7
C++ Witch
 
laserlight's Avatar
 
Join Date: Oct 2003
Location: Singapore
Posts: 11,375
Quote:
Originally Posted by abachler
yeah, no direct download though, which is one thign that always ........es me off about open source, as if everyone is going to go through the trouble of setting up an SVN directory for every project they download.
The keyword is "yet". If you are going to hack on the code or use the bleeding edge, then yes, you should go through the trouble of downloading the version control repository for the project (unless the project also provides nightly snapshots to download or something). Otherwise, wait for the release to be properly available.
__________________
C + C++ Compiler: MinGW port of GCC
Build + Version Control System: SCons + Bazaar

Look up a C/C++ Reference and learn How To Ask Questions The Smart Way
laserlight is online now   Reply With Quote
Old 04-03-2009, 05:47 PM   #8
Registered User
 
Tonto's Avatar
 
Join Date: Jun 2005
Location: New York
Posts: 1,465
I keep trying to build this under cygwin and then mfpr fails damnit
__________________

╔╗╔╦══╦╗╔╦══╦╗
║╚╝║╔╗║╚╝║╔╗║║
║╔╗║╠╣║╔╗║╠╣╠╣
╚╝╚╩╝╚╩╝╚╩╝╚╩╝

codez http://code.google.com/p/zxcvbn/
Tonto is offline   Reply With Quote
Old 04-03-2009, 06:27 PM   #9
Registered User
 
Join Date: Dec 2006
Location: Canada
Posts: 2,012
I will try it with MSYS tonight.
cyberfish is offline   Reply With Quote
Old 04-04-2009, 12:40 AM   #10
Registered User
 
Tonto's Avatar
 
Join Date: Jun 2005
Location: New York
Posts: 1,465
i have it compiling because i couldn't find any binary distribution for cygwin. there's a binary distribution for mingw and msys though TDM's GCC/mingw32 Builds

i've had it compiling for like 10 hours now @_@
__________________

╔╗╔╦══╦╗╔╦══╦╗
║╚╝║╔╗║╚╝║╔╗║║
║╔╗║╠╣║╔╗║╠╣╠╣
╚╝╚╩╝╚╩╝╚╩╝╚╩╝

codez http://code.google.com/p/zxcvbn/
Tonto is offline   Reply With Quote
Old 04-04-2009, 02:08 AM   #11
Registered User
 
Join Date: Dec 2006
Location: Canada
Posts: 2,012
Hmm my computer decided to die on me tonight, so no building GCC for me . Building all that stuff on my 12" AMD tablet that doesn't need any help to overheat is probably not a good idea.

I don't think it took that long when I last tried it, though. More like 30 mins - 1 hr (on my Core 2). Maybe it's Cygwin. Apparently Cygwin has a very slow implementation of fork(), so configure scripts all run forever. Not sure if make is affected by that, too.
cyberfish is offline   Reply With Quote
Old 04-06-2009, 02:30 AM   #12
Registered User
 
Join Date: Dec 2006
Location: Canada
Posts: 2,012
Done!

MSYS version, no cygwin requirement.

Code:
C:\Documents and Settings\Administrator\My Documents>gcc -v
Using built-in specs.
Target: i686-pc-mingw32
Configured with: ../configure --enable-languages=c,c++ --target=i686-pc-mingw32
--prefix=/mingw32 --with-sysroot=/mingw32 --disable-shared --disable-nls
Thread model: win32
gcc version 4.4.0 20090404 (prerelease) (GCC)
Built on a new 64-bit XP virtual machine (since I'm going to build the mingw-w64 cross compiler next, and presumably want to test it).

Took me a whole afternoon + night hunting for the bits and pieces, compiling, troubleshooting, etc. GCC itself took about 2 hours to compile.

This version uses the CRT and headers from the mingw-w64 project (NOT the original mingw). It seems to be better maintained, and more feature-rich, and supports 64-bit (as well as 32-bit). No multilib for now, though (-m32/-m64).

I only tested it briefly, and it seems to work (-std=gnu++0x is too nice ). Didn't test any Windows API code, though, since I don't have any...

If anyone wants to try it out -
http://cyberfish.wecheer.com/mingw32.7z (~27MB, decompresses to 250MB)

how I compiled everything (I'm really inexperienced at this... anyone see anything wrong?)
Quote:
CFLAGS="-pipe -O2 -mms-bitfields -march=i686"
SourceForge.net Repository - [mingw-w64] View of /trunk/mingw-w64-doc/howto-build/mingw-w64-howto-build.txt

binutils 2.19
mkdir build-32
cd build-32
../configure --target=i686-pc-mingw32 --prefix=/mingw32 --with-sysroot=/mingw32 --disable-nls --disable-shared
csmake -j 2
csmake install

GMP 4.2.4 (Nabble - MinGW - User - help to compile gmp-4.2.2 fixes the Makefile)
mkdir build-32
cd build-32
ABI=32 ../configure --prefix=/mingw --disable-shared
csmake -j 2
csmake check #all tests passed
csmake install

mpfr 2.4.1
mkdir build-32
cd build-32
../configure --prefix=/mingw --disable-shared
csmake -j 2
csmake install

gcc 4.4 SVN branch (checked out Apr 4, 2009)
mkdir build-32
cd build-32
../configure --enable-languages=c,c++ --target=i686-pc-mingw32 --prefix=/mingw32 --with-sysroot=/mingw32 --disable-shared --disable-nls
csmake -j 2 all-gcc
csmake install-gcc

mingw-w64-crt
export PATH=$PATH:/mingw32/bin
mkdir build-32
cd build-32
../configure --host=i686-pc-mingw32 --enable-lib32 --disable-lib64 --prefix=/mingw32 --with-sysroot=/mingw32
csmake -j 2
csmake install

rest of GCC
rm -rf /mingw32/mingw
cp -r /mingw32/i686-pc-mingw32 /mingw32/mingw
cd build-32
csmake -j 2
csmake install

Last edited by cyberfish; 04-06-2009 at 02:33 AM.
cyberfish is offline   Reply With Quote
Old 04-07-2009, 04:25 PM   #13
Registered User
 
Join Date: Dec 2006
Location: Canada
Posts: 2,012
For my chess program, GCC 4.4 (on Linux) doesn't make it measurably faster than with GCC 4.3, but "-O3" compilation time is about 30% longer.

Quote:
cyberfish@cyberfish-desktop:/data/cpp/Brainless$ time g++ -march=native -g -O3 -Wall Brainless.cpp -o bin/Release/Brainless -lboost_thread

real 0m6.711s
user 0m5.616s
sys 0m0.348s
cyberfish@cyberfish-desktop:/data/cpp/Brainless$ time g++-4.4 -march=native -g -O3 -Wall Brainless.cpp -o bin/Release/Brainless -lboost_thread

real 0m8.929s
user 0m8.569s
sys 0m0.172s
cyberfish@cyberfish-desktop:/data/cpp/Brainless$ time g++-4.4 -march=native -g -O0 -Wall Brainless.cpp -o bin/Release/Brainless -lboost_thread

real 0m3.502s
user 0m2.904s
sys 0m0.200s
At least I can switch to std::thread from boost::thread now .
cyberfish is offline   Reply With Quote
Old 04-07-2009, 04:55 PM   #14
Senior software engineer
 
brewbuck's Avatar
 
Join Date: Mar 2007
Location: Portland, OR
Posts: 5,768
Quote:
Originally Posted by cyberfish View Post
For my chess program, GCC 4.4 (on Linux) doesn't make it measurably faster than with GCC 4.3, but "-O3" compilation time is about 30% longer.
But did you build GCC the same way the older one was built?
__________________
"Congratulations on your purchase. To begin using your quantum computer, set the power switch to both off and on simultaneously." -- raftpeople@slashdot
brewbuck is offline   Reply With Quote
Old 04-07-2009, 05:02 PM   #15
Registered User
 
Join Date: Dec 2006
Location: Canada
Posts: 2,012
Hmm good point.

I didn't.

4.3 is from Ubuntu APT. I only built 4.4 myself.

And I just realized I actually checked out trunk (4.5.0) instead of 4.4 release branch. Not sure what difference that makes, since it was just branched a few days ago. I am checking out 4.4 branch now.

GCC trunk was built with -O2, though, and I suspect the Ubuntu people build with -O2, too.
cyberfish is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Visual Studio Express / Windows SDK? cyberfish C++ Programming 23 01-22-2009 02:13 AM
Profiler Valgrind afflictedd2 C++ Programming 4 07-18-2008 09:38 AM
How does compiler/linker such as GCC decide to start locating the appropriate library shong9 C Programming 4 09-02-2007 08:47 PM
Compiles on gcc 3.3 but not on gcc 4.0.3 cunnus88 C++ Programming 5 03-29-2007 12:24 PM
gcc DavidP A Brief History of Cprogramming.com 21 10-22-2003 03:46 PM


All times are GMT -6. The time now is 09:54 AM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22