Как я могу настроить Ubuntu 16.04 (LTS) для разработки приложений GStreamer

Я не могу найти файл заголовка gst.h в моей среде Ubuntu после установки пакетов GStreamer. Как получить файл gst.h, чтобы я мог создать приложение, как здесь? https://gstreamer.freedesktop.org/documentation/application-development/basics/helloworld.html

1 ответ

Было сложно найти подробное описание того, как установить библиотеки GStreamer для сборки приложений в Linux:

Начальная команда:

$ sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-уродливый gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-pulseaudio

Официальная документация здесь: https://gstreamer.freedesktop.org/documentation/installing/on-linux.html не описывает этот параметр *-dev. В основном вам нужен libgstreamer1.0-dev, чтобы иметь доступ к заголовочному файлу с именем gst.h (/usr/include/gstreamer-1.0/gst/gst.h).

По состоянию на 22 января 2019 года мне пришлось понизить версию трех библиотек, чтобы иметь возможность устанавливать библиотеки *-dev GStreamer в Ubuntu 16.04LTS (вам может потребоваться или не потребоваться переход на более раннюю версию).

Вы узнаете, нужно ли понижать версию при вводе: $ sudo aptitude install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev

Библиотеки для понижения указаны aptitude:

  • libglib2.0-dev зависит от libglib2.0-0=2.48.0-1ubuntu4, вместо этого я установил 2.48.2-0Ubuntu4.1.

  • libxml2-dev зависит от libxml2=2.9.3+dfsg1-1, у меня установлено 2.9.3+dfsg1-1ubuntu0.6.

  • libicu-dev зависит от libicu55= 55.1-7, но у меня установлено 55.1-7ubuntu0.4.

Три команды ниже позаботились о понижении:

$ sudo apt-get install libglib2.0-0 = 2.48.0-1ubuntu4

$ sudo apt-get install libxml2 = 2.9.3 + dfsg1-1

$ sudo apt-get install libicu55= 55.1-7

Теперь, если вы запустите: $ sudo find / -name gst.h

Теперь вы должны получить заголовочный файл, используемый для разработки: /usr/include/gstreamer-1.0/gst/gst.h

Также эта команда здесь: $ pkg-config --libs gstreamer-1.0

возвращает: -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0

Другие вопросы по тегам