How to fix "/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found"?

29

11

How to fix this error:

/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found

Platform:

Linux alef 3.2.0-4-amd64 #1 SMP Debian 3.2.35-2 x86_64 GNU/Linux

xliiv

Posted 2013-01-17T13:00:38.407

Reputation: 435

Answers

32

That means the program was compiled against glibc version 2.14, and it requires that version to run, but your system has an older version installed. You'll need to either recompile the program against the version of glibc that's on your system, or install a newer version of glibc (the "libc6" package in Debian).

Debian has glibc 2.16 in the "experimental" repository, but recompiling the program is the safer option. Glibc is the library that everything depends on, so upgrading it can have far-reaching implications. Although there's probably nothing wrong with Debian's glibc 2.16 package, the fact that it's in the experimental repository means it hasn't received as much testing.

Wyzard

Posted 2013-01-17T13:00:38.407

Reputation: 5 832

4This is such a cool answer and I understood each sentence :). How to recompile it (the app is tidesdk developer) under my machine, any references? However i'm gonna accept this answer, nice. – xliiv – 2013-01-17T15:05:47.207

upgrading to debian jessie helped here. – cweiske – 2013-06-21T09:09:45.420

5Does this mean you need exactly version 2.14 of glibc or at least version 2.14? – Philippe – 2013-10-01T14:11:29.363

20

I have posted my solution here, repost it for reference.

In my situation, the error appears when I try to run an application (compiled on Ubuntu 12.04 LTS) using GLIBC_2.14 on Debian Wheezy (which installs glibc 2.13 by default).

I use a tricky way to run it, and get correct result:

  1. Download libc6 and libc6-dev from Ubuntu 12.04 LTS

  2. Run dpkg command to install them into a directory (/home/user/fakeroot/ for example):

    $ dpkg -x libc6-dev_2.15-0ubuntu10.6_amd64.deb /home/user/fakeroot/
    $ dpkg -x libc6_2.15-0ubuntu10.6_amd64.deb /home/user/fakeroot/
    
  3. Run your command with specified LD_LIBRARY_PATH:

    $ LD_LIBRARY_PATH=/home/user/fakeroot/lib/x86_64-linux-gnu/ YOUR_COMMAND
    
  4. My application only uses memcpy() from GLIBC_2.14, and it works.

I don't know whether it will work successfully for other applications. Wish it helpful.

Bin S

Posted 2013-01-17T13:00:38.407

Reputation: 301

0

apt-get update && apt-get -reinstall install vesta-nginx vesta-php

That should just fix it without breaking the OS.  

Ajibola L'Don Jibson Olayanju

Posted 2013-01-17T13:00:38.407

Reputation: 1

2Why? Could you please explain? How is vesta (web hosting control panel) related to the question? – iX3 – 2018-11-06T22:11:12.843