Install root_v5.20 from source with old gcc/g++

Hi,

I am installing software in my lab which is unfortunately dependent on a source installation of root_v5.20 . I have already tried newer versions of ROOT (which install fine), but they are not compatible with this software.

When I attempt to install root_v5.20 using gcc/g++ version 4.4.4 I am awash with error, but it seems like there is an unspoken requirement that I use gcc/g++ version 3.4. Is this true?

As an example, when compiling with the current version of gcc I get the following error:
XrdNetDNS.cc:462: error: invalid conversion from ‘const char*’ to ‘char*’
This causes gmake to exit.

My operating system is Scientific Linux and I have used yum to install compat-gcc-34 and compat-gcc-34-c++ which places gcc34 and g++34 in /usr/bin for use.

I am trying to force the use of version 3.4 of gcc but it seems to be failing. To do this I try:
setenv CC gcc34
setenv CXX g++34

but gmake showbuild | grep CC shows:
CC = gcc
GCC_MAJOR = 4
GCC_MINOR = 4

so it seems to be using the newer version of gcc.

Could you please advise me on how to force the use of gcc34, or if you think this will not solve my problem, advise me in general how to get this installed.

Thank you for your help,

Peter

[quote]When I attempt to install root_v5.20 using gcc/g++ version 4.4.4 I am awash with error, but it seems like there is an unspoken requirement that I use gcc/g++ version 3.4. Is this true?
[/quote]Yes. The code in v5.20 pre-dates the release of g++ v4.4.4 and will not work with it.

[quote]Could you please advise me on how to force the use of gcc34[/quote]The easiest is after you install gcc34 to make sure that its binary location is first in the PATH and its library location is first in the LD_LIBRARY_PATH.

Cheers,
Philippe.