Вернуться назад

DeaDBeeF 2

Скачиваем исходники. В моём случае это файл deadbeef-1.10.0.tar.bz2. Распаковываем его и заходим в папку deadbeef-1.10.0.

Если мы запустим команду:

./configure --help

то можем увидеть там вот такие строки:

...

 --disable-gtk3          disable GTK3 version of gtkui plugin (default: enabled)
 --disable-gtk2          disable GTK2 version of gtkui plugin (default: enabled)
 ...

Это означает, что у DeaDBeeF плагин GTKUI может быть GTK2 или GTK3. По умолчанию оба включены. Если в системе найдётся gtk2, то будет собран плагин GTK2-плагин. Если в системе будет найден gtk3, то соберётся GTK3-плагин. Если в системе будут найдены и gtk2, и gtk3, то установятся оба плагина. Если я хочу, чтобы собрался только GTK3, то могу явно отключить GTK2 с помощью флага --disable-gtk2. То есть надо запустить:

./configure --disable-gtk2

При попытке выполнить этот скрипт сначала сначала вылезает сообщение про то, что нужен clang. После того, как я установил clang, вылезает сообщение:

checking whether C compiler accepts -fblocks... no
configure: error: Clang is required to build DeaDBeeF. Please check the README file.

гпт говорит, что это из-за того, что у меня отсутствует libblocksruntime. В Arch нет такой библиотеки.

libdispatch-git из AUR должен содержать в себе библиотеку libblocksruntime. А вот libdispatch из репозитория extra НЕ содержит libblocksruntime. И если я хочу собрать DeaDBeeF с поддержкой GCD/-fblocks на Arch, то мне надо удалить libdispatch из extra и установить из AUR.

Собираем без gtk2-плагина:

./configure --disable-gtk2
make -j$(nproc)
sudo make install

-----

Зависимости, которые посоветовал сраный чат:

sudo pacman -S base-devel git gtk3 alsa-lib pulseaudio libsndfile libmad libvorbis libogg flac wavpack ffmpeg libjpeg-turbo libpng jansson gettext intltool yasm