Скачиваем исходники. В моём случае это файл 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