Comment réparer «/lib/x86_64-linux-gnu/libc.so.6: version« GLIBC_2.14 »non trouvée»?


29

Comment corriger cette erreur:

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

Plate-forme:

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

Réponses:


30

Cela signifie que le programme a été compilé par rapport à la version 2.14 de la glibc, et qu'il nécessite cette version pour fonctionner, mais votre système a une version plus ancienne installée. Vous devrez soit recompiler le programme avec la version de glibc qui est sur votre système, soit installer une version plus récente de glibc (le paquet "libc6" dans Debian).

Debian a glibc 2.16 dans le référentiel "expérimental", mais recompiler le programme est l'option la plus sûre. Glibc est la bibliothèque dont tout dépend, sa mise à niveau peut donc avoir des implications importantes. Bien qu'il n'y ait probablement rien de mal avec le paquet glibc 2.16 de Debian, le fait qu'il soit dans le référentiel expérimental signifie qu'il n'a pas reçu autant de tests.


4
C'est une réponse tellement cool et j'ai compris chaque phrase :). Comment le recompiler (l'application est développeur tidesdk) sous ma machine, toutes références? Cependant, je vais accepter cette réponse, c'est bien.
xliiv

la mise à niveau vers Debian Jessie a aidé ici.
cweiske

5
Est-ce à dire que vous avez besoin exactement de la version 2.14 de la glibc ou au moins de la version 2.14?
Philippe

20

J'ai posté ma solution ici , republiez-la pour référence.

Dans ma situation, l'erreur apparaît lorsque j'essaie d'exécuter une application (compilée sur Ubuntu 12.04 LTS) à l'aide de GLIBC_2.14 sur Debian Wheezy (qui installe glibc 2.13 par défaut).

J'utilise un moyen délicat pour l'exécuter et obtenir un résultat correct:

  1. Téléchargez libc6 et libc6-dev depuis Ubuntu 12.04 LTS

  2. Exécutez la commande dpkg pour les installer dans un répertoire (/ home / user / fakeroot / par exemple):

    $ 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. Exécutez votre commande avec LD_LIBRARY_PATH spécifié:

    $ LD_LIBRARY_PATH=/home/user/fakeroot/lib/x86_64-linux-gnu/ YOUR_COMMAND
    
  4. Mon application utilise uniquement memcpy () de GLIBC_2.14, et cela fonctionne.

Je ne sais pas si cela fonctionnera avec succès pour d'autres applications. Je le souhaite utile.


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

Cela devrait juste le réparer sans casser le système d'exploitation.  


2
Pourquoi? Pourriez-vous s'il vous plaît expliquer? Quel est le vestalien entre (panneau de contrôle d'hébergement Web) et la question?
iX3
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.