URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 73425
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Пересборка пакетов в Debian GNU/Linux"

Отправлено auto_tips , 18-Дек-10 00:52 
Иногда в 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

URL: http://raphaelhertzog.com/2010/12/15/howto-to-rebuild-debian.../
Обсуждается: http://www.opennet.me/tips/info/2500.shtml


Содержание

Сообщения в этом обсуждении
"Пересборка пакетов в Debian GNU/Linux"
Отправлено DF , 18-Дек-10 00:52 
Интересно, спасибо

"Пересборка пакетов в Debian GNU/Linux"
Отправлено Сергей , 18-Дек-10 03:40 
Наверное этой инструкцией можно заняться для портирвания проги например с Ubuntu 10.10 на Ubuntu 10.04?

"Пересборка пакетов в Debian GNU/Linux"
Отправлено cuki , 28-Дек-10 19:19 
просто используй бэкпорты

"Пересборка пакетов в Debian GNU/Linux"
Отправлено Anonimouse , 18-Дек-10 10:51 
А как настроить компиляцию под особенности своего процессора?

"Пересборка пакетов в Debian GNU/Linux"
Отправлено zomg , 18-Дек-10 11:24 
Спасибо, я умею пересобирать пакеты слаки и редхета, теперь и дебиана тоже =)

"Пересборка пакетов в Debian GNU/Linux"
Отправлено Andrey Mitrofanov , 20-Дек-10 14:07 
http://www.opennet.me/openforum/vsluhforumID3/40568.html#2 %)

"Пересборка пакетов в Debian GNU/Linux"
Отправлено 2 , 25-Дек-10 11:17 
ради сборки одного пакетика тянуть в систему кучу dev пакетов? автор, осиль pbuilder