Reputation: 1298
I am trying to run a really old application that was compiled on the 2.6.24 kernel. But whenever I try to run the software I get the error-:
./deskewDeslant: /lib/libc.so.6: version `GLIBC_2.14' not found (required by ./deskewDeslant)
./deskewDeslant: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./deskewDeslant)
I have tried the following-:
apt-get install libc6
And I get the message the latest version of libc is already installed. I am currently using libc version 2.7. How do I downgrade the version to 2.14 ?
I have tried compiling version 2.14 from source from the GNU site with no luck.
How can I downgrade my gibc to 2.14 ? Whats the proper process ? I am running Ubuntu Hardy Heron since the program was specifically compiled on version 2.6.24.
Upvotes: 1
Views: 2883
Reputation: 213877
I am trying to run a really old application that was compiled on the 2.6.24 kernel.
The kernel version is irrelevant.
Your application was compiled on a system using GLIBC-2.14
(or newer), so it's not that old (GLIBC-2.14
was released on 2011-06-01).
./deskewDeslant: /lib/libc.so.6: version 'GLIBC_2.14' not found (required by ./deskewDeslant)
The error above means that your current GLIBC is too old.
./deskewDeslant: /usr/lib/libstdc++.so.6: version 'GLIBCXX_3.4.15' not found (required by ./deskewDeslant)
The error above means that your libstdc++.so
is also too old.
I am currently using libc version 2.7. How do I downgrade the version to 2.14 ?
You believe that version 2.7
is newer than version 2.14
, but the inverse is true. You need to upgrade your GLIBC
from 2.7
to 2.14
(or newer).
In general, a given OS distribution will never upgrade GLIBC
from the one it originally shipped with (the risk of breaking older applications is deemed too high). This is why your apt-get install libc6
does nothing.
Therefore, your choices are:
GLIBC
, orGLIBC
in non-default location.Option #2 is the simplest.
Option #1 may be the best (you would get security fixes, and other applications you download will work out of the box).
Option #3 is very risky: in addition to potentially breaking existing applications in subtle ways, upgrading system libc is the easiest way to render your system unbootable if you make a mistake in the update process.
Option #4 is quite involved technically. You can find more details here.
Upvotes: 2