[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: libstdc++.so.6: version `GLIBCXX_3.4.9' not found
From: |
mathieu |
Subject: |
Re: libstdc++.so.6: version `GLIBCXX_3.4.9' not found |
Date: |
Sat, 3 May 2008 09:54:46 -0700 (PDT) |
User-agent: |
G2/1.0 |
Hi Paul,
On May 3, 6:23 pm, Paul Pluzhnikov <ppluzhnikov-...@gmail.com> wrote:
> mathieu <mathieu.malate...@gmail.com> writes:
> > I am looking for documentation which would explain how to use older
> > glibc symbol. Right now, when I compile binaries on my linux debian
> > system (using g++ 4.2) people running the exe on there older linux
> > system are getting:
>
> > libstdc++.so.6: version `GLIBCXX_3.4.9' not found
>
> In general, UNIX systems do not support "develop on newer release;
> run on older release" model. Only the inverse is supported (i.e. old
> binaries still run on newer systems).
ok.
> > This look like an extremly simple problem, but I cannot find
> > anything on google, as I am missing the 'right' keyword to search for
>
> It's not very simple, but there are several possible solutions.
> See this message for some of
> them:http://groups.google.com/group/gnu.g++.help/msg/32c0df4f11ff018a
Thanks ! So you suggested basically 3 solutions:
> 1. Build on the oldest release of glibc you plan to support (we
> build on ancient RedHat 6.2 with glibc-2.1, and it runs *everywhere*).
> 2. Use Autopackage (http://autopackage.org/apbuild-apgcc.php)
> 3. Use x86-glibc-2.4 -> x86-glibc-2.3.2 cross-gcc (see
> http://www.kegel.com/crosstool).
I am running a linux debian stable, let say I install g++3.4, if I
build an executable using this particular I should be garantee that
the binary use a quite old GLIBC API, right ? Since this is not listed
in your solution, I am guessing there is a good reason, but I do not
see what's wrong here...
You seems to have a quite elaborate solution since you can run
'everywhere' in my case, since my project is written in C++, I will
only be able to support system that understand ABI version=2 of g++.
So I thought using the earliest possible implementation of ABI
version=2 in g++ 3.4 should solve my issue.
As a side note, since solution #1 seems to be used internally in
solution #2 (apgc is shipped with some kind of old glibc), do you have
any further documentation on how to do that. apgcc is not part of
debian...
I might eventually try solution #3 as support for cross compilation
seems to be a lot easier when using cmake (http://cmake.org), I'll try
to reproduce what was done there.
Thanks again for your help
-Mathieu