The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Раздел полезных советов: Перекомпиляция пакета в Debian и Ub..."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей (Public)
Изначальное сообщение [ Отслеживать ]

"Раздел полезных советов: Перекомпиляция пакета в Debian и Ub..."  
Сообщение от auto_tips (ok) on 11-Мрт-08, 09:30 
Перекомпиляция пакета может понадобиться например, для упаковки более новой версии программы,
наложения определенного патча или пересборки с особенными опциями.

Устанавливаем программы, необходимые для сборки пакетов:
  apt-get install devscripts
  apt-get install build-essential

В /etc/apt/sources.list раскомментируем строки с deb-src для нужного репозитория, например:
   deb-src http://ftp.us.debian.org/debian/ etch main non-free contrib

Загружаем пакет с исходными текстами в текущую директорию:
   apt-get source имя_пакета

Если под рукой уже есть .dsc, tar.gz и diff.gz файлы, раскрываем их командой:
   dpkg-source -x имя_пакета.dsc

Устанавливаем зависимые пакеты (библиотеки, заголовочные файлы и т.д.), требуемые для сборки:
   apt-get build-dep имя_пакета

Вносим изменения в появившейся директории "имя_пакета-версия".
Если собрались импортировать в пакет более новую версию программы, то воспользуемся утилитой uupdate:
   uupdate -u путь_к_tar_gz_архиву_c_более_новой_версией_программы
При этом в автоматическом режиме будут адаптированы патчи от старой версии,
в случае несостыковок придется исправлять патчи руками.

Собираем пакет:
  cd имя_пакета-версия
  debuild -us -uc

"-us" и "-uc" указываем так как не являемся мантейнером пакета и не можем создать цифровую подпись для пакета.

Вместо враппера debuild можем напрямую использовать:
   dpkg-buildpackage -rfakeroot

После сборки готовый пакет появится в родительской директории, устанавливаем его:
   cd ..
   dpkg -i <package_file.deb>

Пример для пакета с MySQL:
   mkdir build
   cd build
   apt-get source mysql-server-5.0
   apt-get build-dep mysql-server-5.0
   cd mysql-dfsg-5.0-5.0.32
   debuild -us -uc
   cd ..
   dpkg -i *.deb


URL: http://www.ducea.com/2008/03/06/howto-recompile-debian-packages/
Обсуждается: http://www.opennet.dev/tips/info/1615.shtml

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по ответам | RSS]

1. "Перекомпиляция пакета в Debian и Ubuntu"  
Сообщение от VecH email(ok) on 11-Мрт-08, 09:30 
Я так понял это сделаноиз за моей мольбы о помощи по  перекомпиляции до новой версии пакета samba )))
Спасибо автору
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "Перекомпиляция пакета в Debian и Ubuntu"  
Сообщение от Zulu on 11-Мрт-08, 17:33 
Убивать.
За компиляцию без использования оберток типа pbuilder надо убивать.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "кета в Debi"  
Сообщение от Andrey Mitrofanov on 11-Мрт-08, 17:38 
>Убивать.
>За компиляцию без использования оберток типа pbuilder надо убивать.

Боюсь даже спросить, какова казнь за wget-tar-xzf-make-make-install. Ж-)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

4. "Перекомпиляция пакета в Debian и Ubuntu"  
Сообщение от foe_nix on 11-Мрт-08, 19:05 
Научите делать правильно!
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "Перекомпиляция пакета в Debian и Ubuntu"  
Сообщение от VecH email(ok) on 11-Мрт-08, 19:46 
>Научите делать правильно!

статья которую я прочитал здесь же тоже имеет недостатки

у меня не не патчится пакет скачанный для lenny и sid
под etch

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

7. "пиляция пакета в"  
Сообщение от Andrey Mitrofanov on 12-Мрт-08, 10:41 
>статья которую я прочитал здесь же тоже имеет недостатки
>
>у меня не не патчится пакет скачанный для lenny и sid под etch

И при чём тут _статья_?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

8. "Перекомпиляция пакета в Debian и Ubuntu"  
Сообщение от receiver on 12-Мрт-08, 15:06 
У каждого свой путь, в этом и заключается свобода, кто-то делает так, кто-то по-другому. Вообще говоря есть apt-src ... ;)
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

9. "кета в Debi"  
Сообщение от Zulu on 13-Мрт-08, 11:39 
Изгнание за пределы обитаемого космоса)))
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

10. "Перекомпиляция пакета в Debian и Ubuntu"  
Сообщение от Somewho on 13-Мрт-08, 13:48 
aptbuilder есть
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

11. "Перекомпиляция пакета в Debian и Ubuntu"  
Сообщение от Pilat email on 16-Мрт-08, 14:48 
pbuilder выглядит более правильным в смысле незасорения системы лишними библиотеками, которые при компиляции накапливаются. Но есть метод принципиально лучше. Ставится OpenVZ. Вся деятельность по компииляции пакетов идёт в отдельной виртуальной машине. По сути, это почти тот же chroot, который делает pbuilder - но гораздо проще и очевидней. Далее делаем так, как описано в http://www.debian.org/doc/manuals/quick-reference/ch-package... :

deb-src http://http.us.debian.org/debian testing \
      main contrib non-free
deb-src http://http.us.debian.org/debian unstable \
      main contrib non-free

$ apt-get update
$ apt-get source package
$ dpkg-source -x package.dsc
$ cd package-version
   ... inspect required packages    
$ dpkg-buildpackage -rfakeroot -us -uc

Теперь помещаем .deb файлы в локальный репозиторий и пользуемся.

При компиляции PHP 5.2.5 под etch , например, мне потребовалось поставить >100 пакетов. Вычистить их потом можно, но проще сохранить конфигурацию виртуальной машины до следующей перекомпиляции - ведь за безопасностью тепетрь следить придётся самостоятельно.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

12. "Перекомпиляция пакета в Debian и Ubuntu"  
Сообщение от Аноним (??) on 18-Мрт-08, 16:50 
Вообще есть другой дистриб, ибо нельзя из пакетного дистриба делать сырцы)
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

13. "Перекомпиляция пакета в Debian и Ubuntu"  
Сообщение от Pilat email(ok) on 18-Мрт-08, 17:35 
>Вообще есть другой дистриб, ибо нельзя из пакетного дистриба делать сырцы)

Нельзя кому?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру