Popcorn Time : problème d'éxécution, libharfbuzz.so.0

Bonjour à tous,
Je viens d’installer popcorn time sur ma debian wheezy mais j’ai un problème à l’éxécution.
Je l’ai bêtement installé en lançant le script d’instalation, mais quand je lance le bouzin j’obtiens l’erreur suivante

./Popcorn-Time ./Popcorn-Time: error while loading shared libraries: libharfbuzz.so.0: cannot open shared object file: No such file or directory

Pensez-vous que la solution soit simplement d’aller chercher la librairie et de la builder sur le pc?

Voir : wiki.freedesktop.org/www/Software/HarfBuzz/

Merci d’avance.

Hi arkaik

https://git.popcorntime.io/popcorntime/desktop/issues/1251
Ne me jetez pas la pierre svp
https://ci.popcorntime.io/job/Popcorn-Desktop-MR/521/

Salut,

[quote]root@laptop:~# apt-file update; apt-file search libharfbuzz.so.0
(…)
(…)
(…)
libharfbuzz0b: /usr/lib/i386-linux-gnu/libharfbuzz.so.0
libharfbuzz0b: /usr/lib/i386-linux-gnu/libharfbuzz.so.0.10000.1
[/quote]

Installe libharfbuzz0b, pas besoin de le prendre à partir des sources je pense.

  • koshie

Celui-ci ne se trouve dans les dépôts qu’à partir de Jessie.

Pour une Wheezy, plusieurs choix sont possibles :
_passer en Jessie
_compiler la version Jessie de libharfbuzz0b sur Wheezy
_ajouter les dépôts Jessie aux listes de sources avec une priorité inférieure à 500 (pour rester en Wheezy)

Bonjour à tous,
Tout d’abord merci pour votre aide.
J’ai essayé de compiler la librairie sous Wheezzy mais j’ai des problème de permissions lors de la création des dossier

libtool: install: /usr/bin/install -c .libs/libharfbuzz.so.0.10000.3 /usr/local/lib/libharfbuzz.so.0.10000.3 /usr/bin/install: cannot create regular file `/usr/local/lib/libharfbuzz.so.0.10000.3': Permission denied

Idem quand exécuté avec un sudo.
Une idée du problème?

Sinon j’upgraderai ma Wheezy, ça devrait pas poser trop de problèmes ^^

Encore merci

Si tu attends un peu (21:30 ce 6 septembre), tu trouveras ici une archive que tu déplies sous la racine et qui contient un popcorn marchant wheezy (ça n’est pas la dernière version mais presque).

J’ai déplié l’archive sous la racine mais j’ai une faute de segmentation quand j’essaie d’exécuter popcorn-time.

~$ popcorn Segmentation fault
J’ai aussi essayé d’éxécuter en me plaçant dans opt/Popcorn/ mais j’ai aussi un message d’erreur

/opt/Popcorn$ ./Popcorn-Time ./Popcorn-Time: error while loading shared libraries: libudev.so.1: cannot open shared object file: No such file or directory

Il te suffit d’installer la librairie manquante.

[10:41:22]:~$ acp libudev0 libudev0: Installé : 175-7.2 Candidat : 175-7.2 Table de version : *** 175-7.2 0 500 http://ftp.fr.debian.org/debian/ wheezy/main amd64 Packages 100 /var/lib/dpkg/status [10:41:26]:~$

Même problème malgré le fait qu’elle soit installée

$ aptitude show libudev0 Paquet : libudev0 État: installé Automatiquement installé: non Multiarchitecture : même Version : 175-7.2 Priorité : important Section : libs Responsable : Marco d'Itri <md@linux.it> Architecture : amd64 Taille décompressée : 162 k Dépend: libc6 (>= 2.8) Pré-dépend: multiarch-support Casse: libudev0 (!= 175-7.2), libudev0 (!= 175-7.2) Remplace: libudev0 (< 175-7.2), libudev0 (< 175-7.2) Description : bibliothèque partagée libudev Cette bibliothèque permet d'accéder aux informations des périphériques udev.

$ locate libudev.so /home/julien/Logiciels/Popcorn-Time/opt/Popcorn/libudev.so.1 /home/julien/Logiciels/Popcorn-Time/opt/Popcorn/libudev.so.1.3.5 /lib/x86_64-linux-gnu/libudev.so.0 /lib/x86_64-linux-gnu/libudev.so.0.13.0 /opt/Popcorn/libudev.so.1 /opt/Popcorn/libudev.so.1.3.5

[quote=“arkaik”]J’ai déplié l’archive sous la racine mais j’ai une faute de segmentation quand j’essaie d’exécuter popcorn-time.

~$ popcorn Segmentation fault
[/quote]
bizarre ça… Tu es bien sous wheezy? 64bits ou 32 bits?
Que te donnes sous /opt/Popcorn
$ ldd Popcorn-time
puis
$ LD_LIBRARY_PATH=/opt/Popcorn ldd Popcorn-time

[quote]

J’ai aussi essayé d’éxécuter en me plaçant dans opt/Popcorn/ mais j’ai aussi un message d’erreur

/opt/Popcorn$ ./Popcorn-Time ./Popcorn-Time: error while loading shared libraries: libudev.so.1: cannot open shared object file: No such file or directory [/quote]Normal. Les librairies sont sous /opt/Popcorn. C’est pour ça que ça m’étonnes.

Oui je suis bien sous Wheezzy 64bits, après je suis en multiarch pour des besoins de développement. Je suis loin d’être un expert dans le domaine mais peut être que ça viens de la (je m’explique, quand je dit multiarch c’est que j’ai pas mal de paquets installés pour des archi 32bits et armhf vu que je développe pas mal sur des cibles embarquées)

Effectivement ld ne trouve pas la libudev

$ ldd Popcorn-Time linux-vdso.so.1 (0x00007ffef5fc2000) libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fc693950000) libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007fc693747000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fc69353e000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fc69333a000) libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007fc6930ea000) libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fc692df1000) libXtst.so.6 => /usr/lib/x86_64-linux-gnu/libXtst.so.6 (0x00007fc692bec000) libgtk-x11-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 (0x00007fc6925ad000) libgdk-x11-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 (0x00007fc6922f9000) libatk-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x00007fc6920d6000) libpangocairo-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007fc691ec9000) libgdk_pixbuf-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007fc691ca8000) libcairo.so.2 => /usr/lib/x86_64-linux-gnu/libcairo.so.2 (0x00007fc6919af000) libpango-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007fc691762000) libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007fc6914c2000) libfontconfig.so.1 => /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007fc69128b000) libXi.so.6 => /usr/lib/x86_64-linux-gnu/libXi.so.6 (0x00007fc69107c000) libXcomposite.so.1 => /usr/lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007fc690e79000) libnss3.so => /usr/lib/x86_64-linux-gnu/libnss3.so (0x00007fc690b3b000) libnssutil3.so => /usr/lib/x86_64-linux-gnu/libnssutil3.so (0x00007fc69090f000) libsmime3.so => /usr/lib/x86_64-linux-gnu/libsmime3.so (0x00007fc6906e1000) libplc4.so => /usr/lib/x86_64-linux-gnu/libplc4.so (0x00007fc6904dc000) libnspr4.so => /usr/lib/x86_64-linux-gnu/libnspr4.so (0x00007fc69029c000) libgconf-2.so.4 => /usr/lib/x86_64-linux-gnu/libgconf-2.so.4 (0x00007fc69006a000) libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007fc68fe58000) libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007fc68fc52000) libasound.so.2 => /usr/lib/x86_64-linux-gnu/libasound.so.2 (0x00007fc68f95d000) libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007fc68f75b000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fc68f53e000) libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007fc68f313000) libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007fc68f0cd000) libudev.so.1 => not found libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fc68edc5000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fc68eac4000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fc68e8ae000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fc68e504000) libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fc68e2e4000) /lib64/ld-linux-x86-64.so.2 (0x00007fc693ca6000) libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007fc68e0e2000) libffi.so.5 => /usr/lib/x86_64-linux-gnu/libffi.so.5 (0x00007fc68ded4000) libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fc68dc97000) libgio-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007fc68d944000) libpangoft2-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007fc68d718000) libXinerama.so.1 => /usr/lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007fc68d516000) libXrandr.so.2 => /usr/lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007fc68d30d000) libXcursor.so.1 => /usr/lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007fc68d103000) libgmodule-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007fc68ceff000) libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007fc68ccd7000) libpixman-1.so.0 => /usr/lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007fc68ca51000) libxcb-shm.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007fc68c84e000) libxcb-render.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007fc68c643000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fc68c42c000) libplds4.so => /usr/lib/x86_64-linux-gnu/libplds4.so (0x00007fc68c227000) libdbus-glib-1.so.2 => /usr/lib/x86_64-linux-gnu/libdbus-glib-1.so.2 (0x00007fc68c000000) libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007fc68bdfc000) libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fc68bbf7000) libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007fc68b9d7000) libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007fc68b7bf000)

Pour la deuxième

$ LD_LIBRARY_PATH=/opt/Popcorn ldd Popcorn-time Erreur de segmentation

Question, est ce que ce ne serait pas solutionnable en rajoutant le chemin vers /opt/Popcorn dans dans le fichier/etc/ld.so.conf.d/x86_64-linux-gnu.conf histoire que le linker aille jeter un œil dedans?

Petit up de news,
Après avoir essayé de modifier /etc/ld.so.conf.d/x86_64-linux-gnu.conf ça ne marchais toujours pas.
J’ai donc copié libudev.so.1 dans /usr/lib/x86_64-linux-gnu/ et maintenant ça marche en partie.
Je m’explique:

Dans /opt/Popcorn/ lorsque j’exécute Popcorn-Time ça marche.
Par contre j’ai toujours la faute de segmentation lorsque je lance la commande popcorn.

Est ce que si je supprime /usr/local/bin/popcorn, j’aurais moyen de créer bêtement une commande qui ferait directement appel à /opt/Popcorn/Popcorn-Time (avec un alias par exemple) ?

Et après peut être même créer un raccourci faisant appel à cet alias ^^

Bien sur :

# cd /usr/local/bin
# rm popcorn
# ln -s /opt/Popcorn/Popcorn-Time popcorn

Ben put*** les gars je sais pas quoi vous dire à part un très grand merci.
Ça marche parfaitement :smiley:
Encore une fois merci à la communauté Linux d’être aussi cool. Je passe le post en résolu.
See you guys, thanks.