[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Octave built with gcc-4.4.4 linking to wrong version of libstdc++
From: |
Sergei Steshenko |
Subject: |
Re: Octave built with gcc-4.4.4 linking to wrong version of libstdc++ |
Date: |
Tue, 14 Sep 2010 23:48:13 -0700 (PDT) |
--- On Tue, 9/14/10, RUSS BRENNAN <address@hidden> wrote:
From: RUSS BRENNAN <address@hidden>
Subject: Octave built with gcc-4.4.4 linking to wrong version of libstdc++
To: address@hidden
Date: Tuesday, September 14, 2010, 2:12 PM
Hi all,
I have build octave from source using gcc 4.4.4, also built from source. The
build completes successfully, but when I do "run-octave" I get messages about
not having the right GLIBCXX version in libstdc++, coming from liboctinterp.so.
ldd reveals that this library is linking to /usr/lib64/libstdc++.so.6, which
points to /usr/lib64/libstdc++.so.6.0.3 ... if I remove and re-link to
/path/to/gcc/4.4.4/lib64/libstdc++.so.6.0.13, all works as expected!
gcc filename.cc --print-file-name=libstdc++.so.6 gives me
/path/to/gcc/4.4.4/lib64/libstdc++.so.6.0.13, so it seems that compilation
points to the correct library file.
Can anyone give me clues as to the correct way to resolve this? Symlinking
only works until I do "ldconfig", which overwrites the new symlink.
TIA,
Russell
-----Inline Attachment Follows-----
You probably have more than one 'gcc' version installed; if yes, during
build make sure linker paths explicitly point to the needed 'gcc'
libraries. My build system does this automatically - it uses LDFLAGS and
LD_LIBRARY_PATH environment variables.
Also, it produces and autogenerated shell script used to run Octave.
See the script attached and look in it for gcc-4.4.4 to see how I'm
setting things.
Regards,
Sergei.
octave
Description: Binary data