Re: installing root 5 a user with gcc 4

From: Maurizio Panniello <maurizio_at_iac.es>
Date: Mon, 29 May 2006 19:25:11 +0100


Thanks Christian,
I "solved" (root seem to work correctly) the problem including the path to libstdc++.so.3 in the LD_LIBRARY_PATH. I'm relatively sure that no enviroment variable points to the path /usr/local/lib/ so i can't imagine how root have found the existence of this library!

The library is only used in the ASImage libs (libASImageGui, libASImage and libASPluginGS)

Anyway:

bash-3.00$ ldd libASImage.so

        libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xb7edd000)
        libtiff.so.3 => /usr/lib/libtiff.so.3 (0xb7e91000)
        libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb7e6e000)
        libXpm.so.4 => /usr/X11R6/lib/libXpm.so.4 (0xb7e5f000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0xb7d98000)
        libstdc++.so.3 => /usr/local/lib/libstdc++.so.3 (0xb7d36000) 
        libm.so.6 => /lib/tls/libm.so.6 (0xb7d12000)
        libgcc_s.so.1 => 

/scratch/maurizio/local_install/programs/gcc-4.0.3/lib/libgcc_s.so.1 (0xb7d07000)
        libc.so.6 => /lib/tls/libc.so.6 (0xb7bdd000)
        libz.so.1 => /usr/lib/libz.so.1 (0xb7bcd000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0xb7bbf000)
        libdl.so.2 => /lib/libdl.so.2 (0xb7bba000)
        /lib/ld-linux.so.2 (0x002e1000)


Bye
Maurizio

>Hi Maurizio,
>
>On Mon, 2006-05-29 at 12:59 +0100, Maurizio Panniello wrote:
>
>
>>Hi, i'm tring to install root 5.10/00 as user but using the gcc 4
>>(compiled as user too), so i set these envirmoent before compile root:
>>
>>gcc4path="/scratch/maurizio/local_install/programs/gcc-4.0.3"
>>PATH gcc4path + "/bin"
>>LD_LIBRARY_PATH gcc4path + "/lib"
>>CPPFLAGS "-I" + gcc4path + "/include"
>>LDFLAGS "-L" + gcc4path + "/lib"
>>(this is pseudocode, not csh nor bash)
>>
>>I'm on a RH 3.4 linux.
>>Than i configure root and than make, make cintdlls, make install, all as
>>user.
>>
>>It seem like root is stil searching for old std c++ libraries (dlopen
>>error: libstdc++.so.3: cannot open shared object file: No such file or
>>directory)
>>but it should not use thats (isn't it?)
>>
>>
>
>Perhaps a few lines from your build would be good.
>
>Also, try to compile a small program using your private GCC
>installation, and use the `-V' option to see all the stuff going on.
>So do something like
>
> cat > testit.cc <<EOF
> #include <iostream>
> int main()
> {
> std::cout << "Hello, World" << std::endl;
> return 0;
> }
> EOF
> g++ -V testit.cc -o testit
>
>(no pseudo-code - the above is executable :-)
>
>And try to run the program. Also check with `ldd' that it depends on
>the proper Standard C++ library. If any of this fails, it's due to
>your build of GCC.
>
>
>
>>dlopen error: libstdc++.so.3: cannot open shared object file: No such
>>file or directory
>>
>>
>
>
>
>>Load Error: Failed to load Dynamic link library
>>/scratch/maurizio/local_install/programs/root_v5.10.00/root/lib/libASImage.so
>>Error in <TGComboBox::TGComboBox>: arrow_down.xpm not found
>>Error in <TPluginHandler::SetupCallEnv>: class TASImage not found in
>>plugin ASImage
>>Error in <TGVScrollBar::TGHScrollBar>: arrow_*.xpm not found
>>Error in <TGTreeLBEntry::TGTreeLBEntry>: icon not found for entry
>>
>>
>
>Aha, so it's because libASImage was compiled using the `older' GCC
>compiler (most likely at least). `ldd' libASImage to see the
>dependecies. Could be a problem in the ROOT build, or because a
>sub-shell. Check that you do not set PATH, LD_LIBRARY_PATH, or similar
>in `.bashrc', `.cshrc', `.tcshrc', or similar. also make sure that none
>of the system versions of these resets any of these environment
>variables.
>
>Note to all: Setting environment variables should _only_ be done in
>login scripts. You may end up messing up your machine if you set
>environment variables in your `.bashrc', `.cshrc', `.tcshrc', or
>similar.
>
>Yours,
>
>
>
Received on Mon May 29 2006 - 20:25:21 MEST

This archive was generated by hypermail 2.2.0 : Mon Jan 01 2007 - 16:31:58 MET