web-dev-qa-db-fra.com

gpg: Fatal: libgcrypt est trop ancien (besoin de 1.7.0, avoir 1.6.5)

après la mise à niveau vers yakkety, je ne peux plus mettre à jour ou mettre à niveau le système en toute sécurité. Le résultat de apt update (et aptitude et synaptic, etc.) est toujours le même:

Erreur GPG: http://01.archive.ubuntu.com/ubunt yakkety-updates InRelease: erreur inconnue lors de l'exécution d'apt-key

l'exécution de apt-key update donnez-moi:

gpg: Fatal: libgcrypt est trop ancien (besoin de 1.7.0, avoir 1.6.5)

Assez étrange ... J'ai essayé d'installer manuellement libgcrypt20 et le résultat est toujours le même ...

alors j'ai vérifié avec dpkg -p libgcrypt20 qui me donne:

dpkg-query: le paquet 'libgcrypt20' n'est pas disponible

Mais selon synaptic, la version 1.7.2-2ubuntu1 est installée ...

J'ai déjà essayé ldconfig.

Je ne peux pas mettre à jour en mode non sécurisé, car je suis dans un pays non démocratique et j'ai peur pour mon système.

Thks. c.

4
Antonello Salis

J'ai eu une erreur très semblable à celle-ci. Dans mon cas, une autre version de libgcrypt était installée dans/usr/local/lib.

user@computer:~$ gpg --version
gpg: Fatal: libgcrypt is too old (need 1.7.0, have 1.6.4)
user@computer:~$ Sudo ldd /usr/bin/gpg
    linux-vdso.so.1 =>  (0x00007fff5b3b8000)
    libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f4f1f95d000)
    libbz2.so.1.0 => /lib/x86_64-linux-gnu/libbz2.so.1.0 (0x00007f4f1f74d000)
    libsqlite3.so.0 => /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 (0x00007f4f1f44b000)
    libgcrypt.so.20 => /usr/local/lib/libgcrypt.so.20 (0x00007f4f1f169000)
    libreadline.so.7 => /lib/x86_64-linux-gnu/libreadline.so.7 (0x00007f4f1ef1f000)
    libassuan.so.0 => /usr/local/lib/libassuan.so.0 (0x00007f4f1ed0a000)
    libgpg-error.so.0 => /usr/local/lib/libgpg-error.so.0 (0x00007f4f1eaf6000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f4f1e72f000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f4f1e426000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f4f1e208000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f4f1e004000)
    libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f4f1ddd9000)
    /lib64/ld-linux-x86-64.so.2 (0x0000564feff78000)
user@computer:~$ ls /usr/local/lib
libassuan.la        libgcrypt.so         libgpg-error.so.0       libksba.so.8.11.4
libassuan.so        libgcrypt.so.20      libgpg-error.so.0.17.0  libnpth.la
libassuan.so.0      libgcrypt.so.20.0.4  libksba.la              libnpth.so
libassuan.so.0.7.2  libgpg-error.la      libksba.so              libnpth.so.0
libgcrypt.la        libgpg-error.so      libksba.so.8            libnpth.so.0.0.5

J'ai résolu ce problème en désinstallant la version de gnupg que j'avais précédemment installée manuellement.

./configure
make
make uninstall
4
nhoj

Courir ce qui suit a semblé fonctionner pour moi. Merci aux commentaires d'en haut.

Découvrez où se cache gpg

$ which gpg
> /usr/local/bin/gpg

Fix'r Up

Pointez sur le chemin depuis which gpg et exécutez ldconfig dessus.

$ Sudo ldconfig /usr/local/bin/gpg

Note: ldconfig n'a rien retourné, il a juste commencé à fonctionner après.

Vérifier

$ gpg --version
> gpg (GnuPG) 2.2.17
> libgcrypt 1.8.4
> ...
0
CTS_AE