2017-04-12 6 views
0

Je cours Ubuntu 16.04 avec la distribution Anaconda Python. J'ai installé les bibliothèques gstreamer-1.0 en utilisant Synaptic. Je voulais tester mon installation avec: gst-inspect-1.0 fakesrc (comme le suggère le docs) mais je reçois l'erreur suivante:Gstreamer plugins pas trouvé par gst-inspect-1.0

No such element or plugin 'fakesrc'

Alors, j'ai essayé simplement taper gst-inspect-1.0. Cela me dit qu'il ressemble à aucun des plugins correctement installés:

staticelements: bin: Generic bin 
staticelements: pipeline: Pipeline object 
Total count: 1 plugin, 2 features 

Je ne comprends pas pourquoi aucun plug-ins sont trouvés parce que je l'avais déjà installé dans Synaptic les bibliothèques: libgstreamer-plugins-bad1.0, libgstreamer-plugins-base1.0, libgstreamer-plugins-good1.0, libgstreamer-1.0-0 comme ainsi que toutes les versions -dev. J'ai également fait en sorte que j'ai enlevé les vieux plugins gstreamer0.10* afin qu'ils ne interfèrent pas.

Enfin, j'ai vérifié la sortie de pkg-config --cflags --libs gstreamer-1.0 et a remarqué quelque chose qui pourrait être l'origine du problème:

-pthread -I/home/guel/anaconda2/include/gstreamer-1.0 
-I/home/guel/anaconda2/lib/gstreamer-1.0/include 
-I/home/guel/anaconda2/include/glib-2.0 
-I/home/guel/anaconda2/lib/glib-2.0/include 
-I/home/guel/anaconda2/include 
-L/home/guel/anaconda2/lib -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 

Il semble que les bibliothèques requises sont à l'intérieur des répertoires Anaconda. Cela pourrait-il empêcher le binaire gst-inspect-1.0 (qui est dans /usr/bin) de lier à ces bibliothèques? Mon PKG_CONFIG_PATH contient le répertoire /home/guel/anaconda2/lib/pkgconfig. Désolé, la question est trop naïve. Je suis un débutant avec pkg-config et les bibliothèques de liaison.

Répondre

0

Je résolu le problème en premier se rendant compte que je l'avais modifié mon PKG_CONFIG_PATH dans mon dossier .bashrc afin d'ajouter des chemins personnalisés pkgconfig pour les bibliothèques comme ffmpeg et Anaconda (j'avais ajouté par exemple /opt/ffmpeg/lib/pkgconfig). Cependant, j'ai oublié de conserver les chemins par défaut dans PKG_CONFIG_PATH et j'ai simplement écrasé la variable avec les nouveaux avec la commande export.

La réponse here m'a aidé à comprendre où pkg-config recherche les bibliothèques installées par défaut. Le chemin par défaut inclut le répertoire /usr/lib/x86_64-linux-gnu/pkgconfig où tous les gstreamer-*-1.0.pc sont présents. Par conséquent, il était juste nécessaire de conserver les chemins de recherche par défaut de pkg-config pour que le système puisse localiser les plugins gstreamer.