qmmp в сюзе идёт без libmad, соответственно mp3 слушать нельзя. Я конечно нашёл бинарник libmad.so, но хочется сделать по уму. Как собрать в OBS qmmp c поддержкой libmad?
Собрать qmmp с libmad в OBS
Quarck,
В packman собран с libmad.
Подключайте packman и радуйтесь жизни.
Тема в помощь: Установка мультимедиа кодеков, плагинов и поддержки DVD в openSUSE
Как подключить пакман при сборке в OBS? В пакмане и qmmp есть со всеми плагинами, но версия старая для 13.1.
Просто используйте Audacious. Он вполне гуд и без мерзких этих шкур винамповских.
Quarck, я смотрю, что вы уже и так слинкованы с другим пользовательским проектом. Только вот не могу понять: зачем вы в качестве пакета сборки указываете pkgconfig(libmad), а не pkgconfig(mad)?
Что же касается пакмана, то вам нужно создать _service файл для выкачивания и автоматической сборки зависимости. Но опять же повторюсь, что данный пакет находится в черном списке. Если этот пакет будет обнаружен, то вас вежливо попросят его удалить из проекта obs.
aliaksei1818, Спасибо за ссылку на PMBS. Зарегался там и обновил версию плеера, правда пришлось пересобирать без libsidplayfp. Мне непонятно почему пришлось без этой библиотеки обходиться, ведь в пакмане она есть и в multimedia:libs. Такая же история с пакетом opusfile, из-за него для Tumbleweed не удалось собрать новую версию.
В OBS есть мета-файл, в котором находятся списки проектов. Это то, куда смотрит obs при сборке пакета.
В вашем случае, отредактировать следующие строки:
[console] <repository name="openSUSE_13.1">
<path project="openSUSE.org:openSUSE:13.1:Update" repository="standard"/>
<path project="Multimedia" repository="standard"/>
<arch>x86_64</arch>
<arch>i586</arch>
</repository>[/console]
Но здесь, есть одно но.. Вы сможете собрать пакет только в слинкованном проекте. Все остальное зависит от майнтейнера, принимающего ваши исправления.
Дополню, если говорить о веб-интерфейсе, то в шапке проекта -> Advanced -> Meta
aliaksei1818, Пытаюсь создать пакет в Пакмане для qmmp-plugin-pack, помогите разрешить проблемы, на которые указал мэйнтейнер в комментарии к запросу https://pmbs.links2linux.de/request/show/1140
Почитайте политику упаковки разделяемых библиотек.
Включите все библиотеки в один пакет:
%define soname <цифра/число>
%package -n libqmmp%{soname}-pluginsНу и дополнительно: почему только для 13.1 ?
+%if 0%{?suse_version} == 1310
+BuildRequires: pkgconfig(libmpg123)
+%endif
Лучше так:
%if 0%{?suse_version} > 1230В общем я отправил исправления на ваш проект (см. open request )
aliaksei1818, Снова нужна Ваша помощь. Пытался обновить qmmp в PMBS, но мой запрос отказали. Причина "The package is developed in OBS. Please upgrade there, get the %ifdefs right for packman, and once thats done someone will adjust the _link to point to the devel project in OBS." Я так понимаю мне нужно в OBS этот пакет обновить, а потом кто-нибудь просто укажет ссылку в проекте на PMBS. Мне непонятно, что за %ifdef нужно в спеке указать, чтобы пакеты libavcodec, libavformat, libavutil, mad и libfaad использовались при сборке в PMBS, но не в OBS?
Речь идет об условных операторах с использованием конструкции на подобии этой:
Показать
# For example (spec file):
#
# (at the beginning)
# %bcond_with extra_fonts
# %bcond_without static
# (and later)
# %if %{with extra_fonts}
# ...
# %else
# ...
# %endif
# %if ! %{with static}
# ...
# %endif
# %ifdef %{with static}
# ...
# %endifПримеры находятся по адресу: /usr/lib/rpm/macros
aliaksei1818, Спасибо, этот макрос BUILD_ORIG я так понимаю и указывает на то, в каком окружении собирается пакет? Есть ли смысл в PMBS теперь дублировать спек и тарбол, если можно в Meta ссылку на проект из OBS вставить?
Спасибо, этот макрос BUILD_ORIG я так понимаю и указывает на то, в каком окружении собирается пакет?
Да, именно так. В PMBS это определение по умолчанию равно 1.
Есть ли смысл в PMBS теперь дублировать спек и тарбол, если можно в Meta ссылку на проект из OBS вставить?
Можно и так. Это уже на ваше усмотрение.