Як виправити "/lib/x86_64-linux-gnu/libc.so.6: версія` GLIBC_2.14 'не знайдено "?


29

Як виправити цю помилку:

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

Платформа:

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

Відповіді:


30

Це означає, що програма була скомпільована проти glibc версії 2.14, і вона вимагає запуску цієї версії, але у вашій системі встановлена ​​стара версія. Вам потрібно буде або перекомпілювати програму з версією glibc, яка є у вашій системі, або встановити нову версію glibc (пакет "libc6" в Debian).

Debian має glibc 2.16 у "експериментальному" сховищі, але перекомпіляція програми є більш безпечним варіантом. Glibc - це бібліотека, від якої все залежить, тому її модернізація може мати далекосяжні наслідки. Хоча, мабуть, немає нічого поганого в пакеті glibc 2.16 Debian, той факт, що він знаходиться в експериментальному сховищі, означає, що він не отримав стільки тестування.


4
Це така класна відповідь, і я зрозумів кожне речення :). Як перекомпілювати його (додаток розробник tidesdk) під моєю машиною, будь-які посилання? Однак я прийму цю відповідь, приємно.
xliiv

тут допомогло перехід на debian jessie.
cweiske

5
Це означає, що вам потрібна саме версія 2.14 glibc або принаймні версія 2.14?
Філіп

20

Я розмістив тут своє рішення , відправте його для довідки.

У моїй ситуації помилка з’являється, коли я намагаюся запустити додаток (скомпільований на Ubuntu 12.04 LTS) за допомогою GLIBC_2.14 на Debian Wheezy (який встановлює glibc 2.13 за замовчуванням).

Я використовую складний спосіб запустити його та отримати правильний результат:

  1. Завантажте libc6 та libc6-dev з Ubuntu 12.04 LTS

  2. Запустіть команду dpkg, щоб встановити їх у каталог (/ home / user / fakeroot / наприклад):

    $ 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. Запустіть свою команду із вказаним LD_LIBRARY_PATH:

    $ LD_LIBRARY_PATH=/home/user/fakeroot/lib/x86_64-linux-gnu/ YOUR_COMMAND
    
  4. У моїй програмі використовується лише memcpy () від GLIBC_2.14, і вона працює.

Я не знаю, чи буде це успішно працювати для інших додатків. Побажайте корисного.


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

Це повинно просто виправити, не порушуючи ОС.  


2
Чому? Не могли б ви пояснити? Яким чином vesta(панель керування веб-хостингом) пов'язана з цим питанням?
iX3
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.