Subject: Re: using older gcc
To: Jan Schaumann <jschauma@netmeister.org>
From: Idar Tollefsen <idart@performancedesign.no>
List: tech-pkg
Date: 06/08/2005 09:42:43
Jan Schaumann wrote:
> Hi,
> 
> I have a package that I'd like to compile using gcc-2.95.3.  All of the
> dependencies are compiled using the native gcc (ie 3.3.3).  If I build
> and install gcc-2.95 and then set CC (et al) to point to it, I run into
> problems with C++:

[snip]

> Is there any way I can build this package using gcc-2.95.3 without
> having to rebuild all the dependencies with gcc-2.95.3 as well?

No, they use different ABIs.

GCC 2.95.3 has "-fname-mangling-version-n" where "n" can 0 or 1, but 0 is only 
for compatibility with GCC 2.8.

GCC 3.3 has "-fabi-version=n" where "n" again can be 0 or 1, but 1 is the ABI 
version introduced in GCC 3.2. 0 is the version most closely conforming to the 
C++ ABI specification they use, which I believe is the LSB C++ ABI specification 
for the Itanium, or some derivative of that spec. Default version for GCC 3.2 is 1.

In GCC 3.4, version 2 was introduced  and version 1 is the version from GCC 3.2. 
Again, 0 is the "newest" version. Default version is 2.

Take a look at the GCC manuals under "Options Controlling C++ Dialect" for more 
information.


- IT