debian.org / О Debian Где взять Debian Поддержка Уголок разработчика Новости Wiki

Автор Тема: Сборка программ из исходного кода с разделяющимися пакетами.  (Прочитано 2124 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ferum

  • Ветеран
  • *****
  • Topic Author
  • Сообщений: 3363
  • Buster TDE & Buster LXDE & stretch KDE
Практика показывает, что не смотря на изобилие программ в дебиановских репозиториях всегда что нибудь устаревает и становится неактуальным, либо иногда требуются приложения, требующиеся узкому кругу лиц и распространяемые только в исходных кодах, имеют так же место случаи , когда необходима пересборка пакетов программ с добавлением новых плагинов или наложением патчей. Конечно в большинстве случаев возможна установка таких программ через make install, но бывают ситуации когда желательно использовать пакеты на других машинах.
 Для примера можно взять приложение pidgin собственно говоря одна из линуховых асек , у которой есть свои поклонники. Проблема возникала помнится из за изменений в протоколе icq , на которые разработчики программы реагировали весьма оперативно, а вот изменений в репозиториях приходилось ждать месяцами.
 Собственно говоря для установки нужны 3 пакета pidgin, pidgin-data, pidgin-libnotify их мы и должны получить присборке из исходного кода.
Поиск в гугле дал следующие результаты http://www.xaker.name/forvb/showthread.php?t=14135 немного доработаная версия http://forum.ubuntu.ru/index.php?topic=11609.0
 собственно так и делаем, правда pidgin последней версии просит много новых библиотек для сборки но вот ./configure --prefix=/usr && make прошли успешно. Вопрос как быть дальше? Помним что пытаемся собрать сразу несколько пакетов....
$ dh_make
по логике нужно указать m ?
с debian/control в общих чертах понятно, можно поштудировать спек файл, хоть он и для сборки рпм, а вот с debian/rules лично мне совершенно не ясно , генерируется он стандартным
Spoiler: ShowHide
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
#
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
#
# Modified to make a template file for a multi-binary package with separated
# build-arch and build-indep targets  by Bill Allombert 2001

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

# This has to be exported to make some magic below work.
export DH_OPTIONS


%:
   dh $@

и с ним или собирается пустой пакет, либо процесс останавливается с ошибками
Нашёл мануал http://www.debian.org/doc/manuals/maint-guide/
очень много всего написано, но честно говоря совершенно непонятно.
У бедительная просьба, если есть на форуме профессиональные сборщики или хотя бы те, кто самостоятельно разобрался популярно разжевать что куда и за чем. За ранее спасибо.
Русские дебианщики против цифрового слабоумия !
 

Оффлайн Brainey

  • Ветеран
  • *****
  • Сообщений: 1943
  • Jabber: brainey@jabber.cz
Для примера можно взять приложение pidgin собственно говоря одна из линуховых асек
Один из мультипротокольных кроссплатформенных im-клиентов. //fixed.
Конференция форума в jabber: debianforum@conference.jabber.ru | Клуб кедоводов: kde@conference.jabber.ru
 

Оффлайн Malaheenee

  • Ветеран
  • *****
  • Сообщений: 2565
  • Учтите, мы можем дать и вредный совет.
Мы бэкпортами баловались, причем именно Пиджина. Так что гляньте debian/control в источниках (apt-get source package-name=VERSION).
Если какие-то версии библиотек требуются поновее - соберите (сбэкпортите) сначала их, установите и приступайте к Пиджину. Нам так пришлось собирать сначала libgadu. Также нужно было поправить в секции Build-Depends network-manager-dev и libltdl-dev.

З.Ы. А чем Пиджин из бэкпортов не устраивает?
« Последнее редактирование: 20 Июль 2012, 08:27:01 от Malaheenee »
Debian Sid: XFCE x 1, openbox x 2.
Все мы где-то, когда-то и в чем-то были новичками.
 

Оффлайн ferum

  • Ветеран
  • *****
  • Topic Author
  • Сообщений: 3363
  • Buster TDE & Buster LXDE & stretch KDE
А чем Пиджин из бэкпортов не устраивает?
Собственно программа была приведена исключительно для примера, а бэкпортирование я давно и достаточно успешно освоил. в частности пособирал интересные для себя разработки и убунтовских ppa. Таких версий приложений кстати нет и не когда не будет в официальных репозиториях не debian не ubuntu. Проще говоря мне интересна деятельность девелоперов. Люди делают пусть и не всегда прямые, но очень интересные вещи.
К слову говоря в соответствующей теме неоднократно писали, что в убунтовских ppa зачастую бывают порушены зависимости, и это правда чистой воды. Удивительно но на стабильном релизе дебиан можно сбекпортировать приложение, которое уже не ставится на ubuntu ( из за сломаных зависимостей), используя родные библиотеки debian , а так же бэкпорты отдельных библиотек ubuntu из его разных релизов, в частности от 10.04 ,10.10, 11.04. При этом приложение работает даже стабильнее, чем если бы оно было установлено на ubuntu из соответствующего ppa.
На сегодняшний день меня интересуют для сборки некоторые плагины к уже имеющимся программам., а если уточнить то есть  такая прога VDR и мне хочется собрать для него vdr-plugin-ffnetdev для стриминга на VLC плейер , а принцип сборки таков, что исходники плагина, добавляются в /PLUGINS исходников VDR и в принципе через make install устанавливается без особых проблем, но мне нужен deb пакет, checkinstall в данной ситуации не прокатывает, заимствование /debian/rules из сырцов с убунтовского ppa приводит к сборке с ошибками и на выходе пакета из за которого вся затея не получается ::)
Русские дебианщики против цифрового слабоумия !
 

Оффлайн Malaheenee

  • Ветеран
  • *****
  • Сообщений: 2565
  • Учтите, мы можем дать и вредный совет.
И какие ошибки вываливает? Все решается :) Мы в свое время помучились с локализациями Iceweasel серии 3.6, но ничего, разобрались с довольно-таки хитрым debian/rules, исправив строки, приводившие к ошибкам :)
А вообще, смысл нашего поста сводился к тому, что глянув на файл rules аналогичного пакета, можно написать и свой. Синтаксис там самый обычный, bash/sh.
Debian Sid: XFCE x 1, openbox x 2.
Все мы где-то, когда-то и в чем-то были новичками.
 

Русскоязычное сообщество Debian GNU/Linux



Теги:
 

Сборка SDL 2.0

Автор Dtctkrjd

Ответов: 0
Просмотров: 1690
Последний ответ 01 Апрель 2013, 16:29:59
от Dtctkrjd
Сборка пакета CUPS-1.6.4 в Debian 7

Автор Med

Ответов: 0
Просмотров: 1496
Последний ответ 26 Ноябрь 2013, 14:52:44
от Med
Сборка netmap

Автор prolan

Ответов: 0
Просмотров: 1073
Последний ответ 29 Март 2016, 09:36:41
от prolan
Сборка ядра под intel atom [Решено]

Автор seisros

Ответов: 41
Просмотров: 11728
Последний ответ 27 Август 2013, 12:43:36
от w285
Сборка программы с целью включения в репозиторий

Автор alsoijw

Ответов: 22
Просмотров: 2389
Последний ответ 10 Декабрь 2015, 16:32:18
от alsoijw