| Пересборка пакетов в Debian GNU/Linux | [исправить] | 
| Иногда в Debian Stable нужно установить более новую версию пакета из Testing,
который не был перенесен в backports.
1. Загрузка пакета с исходными текстами
Проверяем чтобы в /etc/apt/sources.list были активированы репозитории deb-src:
   deb-src http://ftp.debian.org/debian unstable main contrib non-free
   deb-src http://ftp.debian.org/debian testing main contrib non-free
   deb-src http://ftp.debian.org/debian stable main contrib non-free
Для загрузки самых свежих исходных текстов пакета "publican" следует выполнить
   sudo apt-get update 
   apt-get source publican
Если необходимо установить исходные тексты пакета из определенной ветки
дистрибутива, например, Debian Testing, что является разумным компромиссом
между свежестью и стабильностью:
   apt-get source publican/testing
Исходные тексты будут сохранены в текущую директорию:
   ls -dF publican*
   publican-2.1/                 publican_2.1-2.dsc
   publican_2.1-2.debian.tar.gz  publican_2.1.orig.tar.gz
В случае, когда пакет отсутствует в репозиториях, загрузить пакет можно командой:
   dget -u dsc-url
где dsc-url представляет собой URL к .dsc-файлу с описанием параметров пакета,
опция "-u" указывает на отмену стадии проверки валидности пакета. Для получения
утилиты dget нужно установить пакет.
2. Установка зависимостей
Для установки пакетов, необходимых для сборки заданной программы,  следует
использовать команду "apt-get build-dep пакет", например:
   apt-get build-dep publican/testing
Если пакет взят не из репозитория, то для выполнения аналогичного действия в
директории с исходными текстами пакета нужно выполнить команду:
   dpkg-checkbuilddeps
которая выведет список задействованных при сборке пакетов, которые затем нужно
установить через "apt-get install".
3. Изменение исходных текстов перед сборкой
При необходимости код собираемой программы можно модифицировать, например,
приложить дополнительный патч или отредактировать debian/rules. При внесении
изменений во избежание конфликтов рекомендуется изменить номер версии,
используя команду dch из пакета devscripts:
   dch --local имя
где "имя" является коротким именем, идентифицирующим вносящего изменение. После
выполнения команды будет предложено указать комментарий для помещения в debian/changelog.
4. Сборка пакета
Для сборки в директории с распакованным кодом выполняем команду debuild из пакета devscripts.
   cd publican-2.1
   debuild -us -uc
где опции "-us -uc" указывают пропустить связанный с проверкой сигнатур шаг, в
случае если у сборщика отсутствует валидный GPG-ключ, совпадающий с данными
вначале файла changelog.
После завершения сборки в предыдущей директории можно будет найти бинарный пакет:
   cd ..
   ls -dF publican*
   publican-2.1/                    publican_2.1-2rh1.dsc
   publican_2.1-2.debian.tar.gz     publican_2.1-2rh1_i386.changes
   publican_2.1-2.dsc               publican_2.1-2rh1_source.changes
   publican_2.1-2rh1_all.deb        publican_2.1.orig.tar.gz
   publican_2.1-2rh1.debian.tar.gz
 | 
|  | 
| 
 | 
 | | Раздел:    Корень / Администратору / Система / Linux специфика / Установка и работа с пакетами программ в Linux | 
| 
 | 1.2, Сергей (??), 03:40, 18/12/2010  [ответить] | +/– |  | Наверное этой инструкцией можно заняться для портирвания проги например с Ubuntu 10.10 на Ubuntu 10.04? 
 |  |  | 
 
 | 1.3, Anonimouse (?), 10:51, 18/12/2010  [ответить] | +/– |  | А как настроить компиляцию под особенности своего процессора? 
 |  |  | 
 
 | 1.4, zomg (?), 11:24, 18/12/2010  [ответить] | +/– |  | Спасибо, я умею пересобирать пакеты слаки и редхета, теперь и дебиана тоже =) 
 |  |  | 
 
 
 | 1.6, 2 (?), 11:17, 25/12/2010  [ответить] | +/– |  | ради сборки одного пакетика тянуть в систему кучу dev пакетов? автор, осиль pbuilder 
 |  |  | 
 
 
 |