erreur lors du chargement des bibliothèques partagées: libncurses.so.5:

J’ai installé Android Studio et j’ai essayé d’y lancer mon premier projet, et j’ai eu l’erreur suivante:

Error Output was: /home/user/android-studio/sdk/platform-tools/adb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory 

J’ai déjà essayé de courir

 sudo ldconfig 

mais ça n’aide pas. J’ai récemment installé libncurses (avant d’utiliser Android Studio).

Que devrais-je faire?

Si vous êtes absolument certain que libncurses, alias ncurses, est installé, comme dans le cas où vous avez réussi les ls de la bibliothèque, vous exécutez peut-être un système d’exploitation Linux 64 bits et n’avez que les libncurses 64 bits installées. le programme en cours d’exécution (adb) est 32 bits.

Si tel est le cas, un programme 32 bits ne peut pas se lier à une bibliothèque 64 bits (et ne le trouvera pas de toute façon), vous devrez peut-être installer libcurses ou ncurses (version 32 bits). De même, si vous exécutez une adb 64 bits, vos ncurses sont peut-être 32 bits (scénario possible mais moins probable).

Si libncurses n’est pas installé, installez-le et réessayez. sudo apt-get install libncurses5:i386

Installez également la collection de bibliothèques en utilisant cette commande sudo apt-get install ia32-libs

erreur lors du chargement des bibliothèques partagées: libncurses.so.5

Si vous voyez ceci, votre dissortingbution a probablement une version plus récente de libncurse installée. D’abord, découvrez quelle version de libncurses votre dissortingbution a:

 $ ls -1 /usr/lib/libncurses* /usr/lib/libncurses.so /usr/lib/libncurses++.so /usr/lib/libncurses++w.so /usr/lib/libncursesw.so /usr/lib/libncurses++w.so.6 /usr/lib/libncursesw.so.6 /usr/lib/libncurses++w.so.6.0 /usr/lib/libncursesw.so.6.0 

Dans ce cas, nous avons affaire à la version 6, nous faisons donc deux liens symboliques:

 $ sudo ln -s /usr/lib/libncursesw.so.6.0 /usr/lib/libncurses.so.5 $ sudo ln -s /usr/lib/libncursesw.so.6.0 /usr/lib/libtinfo.so.5 

Après cela, le programme devrait fonctionner normalement.

Votre système ne fournit probablement pas la bibliothèque ncurses à la version utilisée par android studio. Mon installation linux arch ne comportait que ncurses 6 mais android studio a besoin de la version 5. Vous pouvez vérifier si votre dissortingbution possède un package de compatibilité ou utiliser la solution proposée par Rahmat Aligos.

Dans Fedora 28, utilisez:

 sudo dnf install ncurses-compat-libs 

Pour installer ncurses-compat-libs sur Fedora 24 m’a aidé sur ce problème (impossible de démarrer l’erreur adb lors du chargement des bibliothèques partagées: libncurses.so.5)

Sur Arch, je répare comme ça:

 sudo ln -s /usr/lib/libncursesw.so.6 /usr/lib/libtinfo.so.6