1

I have a computer that runs Debian Stretch which has Gstreamer 1.0 installed. I am trying to run a Processing sketch that uses the Processing video library which in turn relies on Gstreamer 0.10. This produces a runtime error because they removed a symbol gst_object_sink.

It seems a PITA to try to rebuild the Processing video library with different Java bindings for Gstreamer 1.0.

Thus the question: Is it possible to install on the same system a second version (0.10) of Gstreamer?


The problem seems to be that libgstreamer0.10-0 appears in Wheezy, Jessie, SID, but not Stretch/Testing.... Why would that be, and how to fix it?

1
  • Debian is switching to GStreamer 1.0 and has therefore already GStreamer 0.10 removed from Debian Stretch/Testing. See bugs.debian.org/cgi-bin/bugreport.cgi?bug=802812 . It will also be removed from Sid/Unstable as soon as all programs are update to the new GStreamer release.
    – jofel
    Apr 18, 2016 at 13:59

2 Answers 2

2

It is perfectly possible to install multiple versions of a library in Debian. Pinning is the way to go. In this case I decided to obtain libgstreamer0.10 from Debian Unstable (running Debian Testing myself).

Create the file /etc/apt/sources.list.d/unstable.list with contents:

deb http://ftp.nl.debian.org/debian/ unstable main
deb-src http://ftp.nl.debian.org/debian/ unstable main

Then, create /etc/apt/preferences.d/unstable with contents:

Package: *
Pin: release a=unstable
Pin-Priority: 200

Now run apt-get update. To check if everything went ok, type apt-cache policy libgstreamer0.10-0. It should report something like:

libgstreamer0.10-0:
  Installed: (none)
  Candidate: 0.10.36-1.5
  Version table:
     0.10.36-1.5 50
        200 http://ftp.nl.debian.org/debian unstable/main amd64 Packages
        100 /var/lib/dpkg/status

Note that this adds all packages from unstable with a lower priority. It is also possible to single out one or a few packages. See the documentation on pinning for more details.

PS For me the reason to do this was solving an RStudio dependency on libgstreamer-0.10: "rstudio: error while loading shared libraries: libgstreamer-0.10.so.0: cannot open shared object file: No such file or directory" (added these details so others may find this after a search).

PPS The link given by @jofel (partly) answers the why part of your question.

2
  • Thanks. So if 200 is a lower priority, what is the "default" priority of my stable system?
    – 0__
    Apr 27, 2016 at 10:40
  • 1
    That would be 500. You can check with any installed package, e.g. apt-cache policy tasksel. Apr 27, 2016 at 11:21
0

I managed to get processing-video 2.2.1 to work, installing the corresponding Debian Jessie .deb files downloaded via https://pkgs.org:

  • gstreamer-0.10-gconf
  • gstreamer-0.10-plugins-base
  • libgstreamer0.10-0
  • libgstreamer-plugins-base0.10-0

Installing each via dpkg -i. Others such as 'plugins-good' have unsatisfied dependencies, but were not needed in my case.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .