help-gplusplus
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Debug builds


From: Bernd Strieder
Subject: Re: Debug builds
Date: Mon, 31 Jan 2005 20:15:49 +0100
User-agent: KNode/0.8.2

Paul Pluzhnikov wrote:

> Matthias <nospam@digitalraid.com> writes:
> 
>> I tried to set up a newer gcc version on my own -- once, and
>> never again. It was a major pain in the b... back.
> 
> How recent was your painful experience?
> Modern versions of gcc build on Linux without any effort at all:
> 'configure && make && make install' is all it takes.

I think the problems are due to people always trying to replace the old
compiler. Somehow the idea to build and install an add-on compiler
into /usr/local and setting $PATH and $LD_LIBRARY_PATH manually seems
to be too arcane.

The real problems come after that. g++-3.3 compiled things need
libstdc++.so.5, g++-3.4 links libstdc++.so.6. If you link just any
distributed library containing C++ compiled things with the new
compiler, you will get linker warnings. I have seen that mixing those
libraries seems to work in simple cases, but in general I'd try to
avoid mixing library versions with different major release numbers.

The biggest problem in switching to gcc-3.4 as default is probably the
C++ changes. Changing all that legacy code that relies on the former
forgiveness of g++ ist a lot of nasty work. A bit too complicated to be
automated, and a few too many places to be done really quickly. And
everybody waiting for gcc-4 to start the conversion. In my experience
it pays out to make the code compatible with g++-3.4, because it will
be compatible with g++-4 and g++-3.3. And g++-3.4 compiles faster, this
is enough reason to switch as developer. Switching back to 3.3 for
releases is easy. If everybody switched ASAP to g++-3.4, the step
towards g++-4.0 would be a lot smaller, when it comes, finally. And
that step will pay out.

Bernd Strieder


reply via email to

[Prev in Thread] Current Thread [Next in Thread]