Bagaimana cara memperbaiki “/lib/x86_64-linux-gnu/libc.so.6: versi` GLIBC_2.14 'tidak ditemukan ”?

29

Cara memperbaiki kesalahan ini:

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

Peron:

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

Jawaban:

30

Itu berarti program ini dikompilasi dengan glibc versi 2.14, dan itu mengharuskan versi itu untuk berjalan, tetapi sistem Anda memiliki versi yang lebih lama diinstal. Anda harus mengkompilasi ulang program terhadap versi glibc yang ada di sistem Anda, atau menginstal versi glibc yang lebih baru (paket "libc6" di Debian).

Debian memiliki glibc 2.16 dalam repositori "eksperimental", tetapi mengkompilasi ulang program adalah opsi yang lebih aman. Glibc adalah pustaka yang semuanya bergantung, jadi memutakhirkannya dapat memiliki implikasi yang luas. Meskipun mungkin tidak ada yang salah dengan paket glibc 2.16 Debian, fakta bahwa paket itu ada di repositori eksperimental berarti belum menerima banyak pengujian.

Wyzard - Berhenti Membahayakan Monica--
sumber
4
Ini adalah jawaban yang sangat keren dan saya mengerti setiap kalimatnya :). Bagaimana cara mengkompilasi ulang (aplikasi ini tidesdk developer) di bawah mesin saya, ada referensi? Namun saya akan menerima jawaban ini, bagus.
xliiv
upgrade ke debian jessie membantu di sini.
cweiske
5
Apakah ini berarti Anda memerlukan glibc versi 2.14 atau setidaknya versi 2.14?
Philippe
20

Saya telah memposting solusi saya di sini , posting ulang untuk referensi.

Dalam situasi saya, kesalahan muncul ketika saya mencoba menjalankan aplikasi (dikompilasi pada Ubuntu 12,04 LTS) menggunakan GLIBC_2.14 pada Debian Wheezy (yang menginstal glibc 2.13 secara default).

Saya menggunakan cara yang rumit untuk menjalankannya, dan mendapatkan hasil yang benar:

  1. Unduh libc6 dan libc6-dev dari Ubuntu 12.04 LTS

  2. Jalankan perintah dpkg untuk menginstalnya ke direktori (/ home / user / fakeroot / misalnya):

    $ 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. Jalankan perintah Anda dengan LD_LIBRARY_PATH yang ditentukan:

    $ LD_LIBRARY_PATH=/home/user/fakeroot/lib/x86_64-linux-gnu/ YOUR_COMMAND
    
  4. Aplikasi saya hanya menggunakan memcpy () dari GLIBC_2.14, dan itu berfungsi.

Saya tidak tahu apakah itu akan berhasil untuk aplikasi lain. Semoga bermanfaat.

Bin S
sumber
0
apt-get update && apt-get -reinstall install vesta-nginx vesta-php

Itu hanya harus memperbaikinya tanpa merusak OS.  

Ajibola L'Don Jibson Olayanju
sumber
2
Mengapa? Bisakah Anda jelaskan? Bagaimana vesta(panel kontrol hosting web) terkait dengan pertanyaan?
iX3