The OpenNET Project
 
Поиск (ключи):    ПРОГРАММЫ СТАТЬИ СОВЕТЫ ФОРУМ
  WIKI НОВОСТИ (+) MAN'ы ДОКУМЕНТАЦИЯ

Пересборка пакетов в 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
 
16.12.2010 , Источник: http://raphaelhertzog.com/2010/12/1...
Раздел:    Корень / Администратору / Система / Linux специфика / Установка и работа с пакетами программ в Linux

Обсуждение [ RSS ]
 
  • 1.1, DF, 00:52, 18/12/2010 [ответить] [смотреть все]
  • +/
    Интересно, спасибо
     
  • 1.2, Сергей, 03:40, 18/12/2010 [ответить] [смотреть все]
  • +/
    Наверное этой инструкцией можно заняться для портирвания проги например с Ubuntu 10.10 на Ubuntu 10.04?
     
     
  • 2.7, cuki, 19:19, 28/12/2010 [^] [ответить] [смотреть все]
  • +/
    просто используй бэкпорты
     
  • 1.3, Anonimouse, 10:51, 18/12/2010 [ответить] [смотреть все]
  • +/
    А как настроить компиляцию под особенности своего процессора?
     
  • 1.4, zomg, 11:24, 18/12/2010 [ответить] [смотреть все]
  • +/
    Спасибо, я умею пересобирать пакеты слаки и редхета, теперь и дебиана тоже =)
     
  • 1.5, Andrey Mitrofanov, 14:07, 20/12/2010 [ответить] [смотреть все]  
  • +/
    http://www.opennet.ru/openforum/vsluhforumID3/40568.html#2 %)
     
  • 1.6, 2, 11:17, 25/12/2010 [ответить] [смотреть все]  
  • +/
    ради сборки одного пакетика тянуть в систему кучу dev пакетов? автор, осиль pbuilder
     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:

     Добавить заметку
     Версия для печати
     
     Поиск заметки:
     

    Последние заметки
    - 12.05 Организация шифрованного бэкапа с помощью rdiff-backup, encfs и Dropbox
    - 11.05 Настройка беспроводного соединения в Debian GNU/Linux
    - 07.05 Использование Google Drive в Linux
    - 18.04 Использование нескольких сетевых стеков в Linux
    - 15.04 Восстановление стандартного KDE меню после его удаления (например, wine)
    - 11.04 Настройка gmirror при использовании GPT во FreeBSD 9
    - 09.04 Маршрутизатор на базе FreeBSD с приоритизация трафика средствами PF и ALTQ
    - 02.04 Частичное восстановление данных MySQL из бэкапа, созданного с использованием LVM
    - 21.03 Настройка DNSSEC в BIND 9.9
    - 17.03 Набор номера на Cisco IP Phone 7960/7940 из скрипта
    RSS | Следующие 15 записей >>


    ПОДПИШИСЬ НА ЖУРНАЛ Linux Format 2012!

    Журнал "Linux Format" (Линукс Формат)- Единственный в России и странах СНГ журнал на русском языке, посвящённый Linux и свободному ПО. Журнал для IT-директоров, IT-менеджеров, программистов, системных администраторов, учителей школ и преподавателей ВУЗов и всех пользователей ПК. В каждом выпуске: Новости индустрии OpenSource, обзоры новинок свободного ПО, обучающие и методические статьи.

    Каждый, кто оформит подписку, получает бонусы и подарки- объёмные наклейки на системный блок, диск с архивом номеров за 2005-2011 г.г. и ежемесячно электронную версию журнала в pdf-формате.

    Оформить подписку на год


      Закладки на сайте
      Проследить за страницей
    Created 1996-2012 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    RUNNet TopList