imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Программы и Операционные системы > Пингвинятник (ОС *NIX)
Опции темы
Старый 03.06.2009, 15:32     # 1
Plague
Administrator
 
Аватар для Plague
 
Регистрация: 06.05.2003
Адрес: Московская Подводная Лодка
Пол: Male
Сообщения: 12 028

Plague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague Демиург
Plague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague Демиург
Debian - сборка приложений из dep-src

Тяжело однако зная одну ось пытаться врубиться в другую.
в общем, в чем вопрос:
даю пример из FreeBSD: имеем дерево портов, посредством коего замечательно все из сорсов собирается. причем можно собрать все по умолчанию:
# make install
а можно и
# make -Dтуева_хуча_опций install
и в этом случае эта самая туева хуча опций передастся сборке (у меня строка сборки mysql того же в 4ре яруса заворачивалась как-то).

вопрос: как тож самое можно осуществить в debian? про вариант ./configure итд я в курсе (и через него все на данный момент и сделано), но интересует все-таки его "родная" система (apt-* dpkg-* и прочее).

в частности, пытаемся собрать php5-mysql:
#apt-get source -b php5-mysql

какого ... оно начинает компилить все известные ей модули? (опять же сравнивая с БСД - там все модули PHP по раздельным портам разнесены, и этот нечастный mysql.so компилится замечательно за 40 секунд, не вытягивая для этого зависимости типа gd png и прочей ахинеи совершенно ему не нужной)
какого оно вцепилось хваткой питбуля в зависимость libmysqlclient15-dev (mysql-5.0), когда у меня рядом стоит libmysqlclient-dev 5.1.34-1 MySQL database development files, и тот самый "./configure итд" его замечательно видит?

есть ключи какие чтоб ее заставить работать как мне надо, а не как дядя написал?
гугление и чтение debian.org ничего не дало. ощущение такое что все либо компилят либо через "./configure итд", либо с умолчальными установками.
__________________
все "спасибы" - в приват и в репутацию! не засоряйте форум!!!!
~~~~~~~~~~~~~~~~~~~~~~

The time has come it is quite clear, our antichrist is almost already here.
M.M.
Plague вне форума  
Старый 03.06.2009, 18:34     # 2
SinClaus
Котозавр
 
Аватар для SinClaus
 
Регистрация: 15.04.2003
Адрес: Russia, Tomsk
Пол: Male
Сообщения: 1 316

SinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех ГуруSinClaus Отец (мать) всех Гуру
Вопрос - а зачем тогда тянуть из сорцов? Эта замечательная apt- и т.д. заточена под бинарные пакеты.
Кстати, по причине этих самых зависимостей при неосторожном обращении может снести систему запросто
__________________
Паранойю у админов лечить нельзя, надо лишь следить, чтобы развивалась в нужном направлении
SinClaus вне форума  
Старый 03.06.2009, 18:52     # 3
Plague
Administrator
 
Аватар для Plague
 
Регистрация: 06.05.2003
Адрес: Московская Подводная Лодка
Пол: Male
Сообщения: 12 028

Plague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague Демиург
Plague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague Демиург
как раз вопрос обратный: зачем тогда вообще поддерживается система deb-src если на выходе у нее получается тоже самое что и в пакетах?? Начальников пугать? согласен, тоже фича полезная: зарядил на компиляцию что-нить типа OpenOffice, и можно с умным видом двое суток пиво пить возле терминала.
А как раз компиляция из сорсов и подразумевает то что, как уже сказано выше: например, в бинарниках PHP идет mysql Client API version 5.0.51, а mysql у меня стоит 5.1.34. Вот для того и должна служить возможность сборки from source дабы иметь возможность скрестить их. А так же для того чтоб иметь возможность внести какие-то другие изменения, и при этом чтоб все это хозяйство стало частью системы, а не было "прикручено проволокой сбоку", как это получается при компилении руками.
Повторяю, в БСД это рулится совершенно прозрачно. Не верю, что нет такой возможности здесь. Иначе действительно смысл src сводится только к пуганию начальников.
__________________
все "спасибы" - в приват и в репутацию! не засоряйте форум!!!!
~~~~~~~~~~~~~~~~~~~~~~

The time has come it is quite clear, our antichrist is almost already here.
M.M.
Plague вне форума  
Старый 03.06.2009, 19:58     # 4
Hubbitus
мод
IMHO Кодер-200(6,7,8)
 
Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734

Hubbitus Бог с наворотамиHubbitus Бог с наворотами
Hubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотами
Костя, мы с тобой это уже обсуждали в аське.
Если ты хочешь собрать пакет с другими опциями, с другими зависимостями и либами - ну так залезь в пакет, измени эти зависимости и либы. Там ar, нету ну никакой проблемы это сделать.
Если жее ты автоматически забираешь приготовленный пакет, и автоматически его собираешь, ну разумеется ты получаешь что-то очень близкое к уже собранному и доступному бинарному пакету. в таком случае, дествительно, смысла пересобирать многое почти никакого в общеем-то...
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям!

Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru
Pahan-Hubbitus.
Hubbitus вне форума  
Старый 03.06.2009, 20:03     # 5
Plague
Administrator
 
Аватар для Plague
 
Регистрация: 06.05.2003
Адрес: Московская Подводная Лодка
Пол: Male
Сообщения: 12 028

Plague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague Демиург
Plague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague Демиург
тоесть нет ни ключей командной строки для перекрытия опций, ни инструментария. берем и тупо правим исходники.
классная система.
тогда уж проще действительно руками компилить через "проволокой сбоку"
__________________
все "спасибы" - в приват и в репутацию! не засоряйте форум!!!!
~~~~~~~~~~~~~~~~~~~~~~

The time has come it is quite clear, our antichrist is almost already here.
M.M.
Plague вне форума  
Старый 03.06.2009, 20:24     # 6
Hubbitus
мод
IMHO Кодер-200(6,7,8)
 
Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734

Hubbitus Бог с наворотамиHubbitus Бог с наворотами
Hubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотами
Цитата:
Сообщение от Plague Посмотреть сообщение
тоесть нет ни ключей командной строки для перекрытия опций, ни инструментария. берем и тупо правим исходники.
классная система.
Система классная, но:
  1. Она прежде всего бинарная. То есть упаковкой в бинаные пакеты занимаются те кто этим и должен заниматься - мэйнтэйнеры пакетов, дистрибутива. Для этого у них есь четкие Guidelines, Policy опыт и надзор.
  2. править надо не исходники, а скрипты сборки пакета. Там и задаются зависимости, опции конфигурирования и прочее.
  3. Инструментарий разумеется есть и весьма продвинутый. Просто опять же, по логике, он для мэнтэйнеров (даже не девелоперов, заметь). Если хочешь этим заниматься осерьезнее, просто с ним надо познакомится поближе.
  4. Ну и последнее, я с этим не особо знаком, я все в RPM мэйнтэйню. В одном из последних Линукс-Форматов была какраз вводная статья о том как создавать deb-пакеты и о их структуре, базовом инструментарии (понятное дело что в одну статью много не впихнешь, но в целом суть понятна). Если нету и надо, могу pdf-номер прислать в ПМе (уже вроде как варез получается )
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям!

Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru
Pahan-Hubbitus.

Последний раз редактировалось Hubbitus; 03.06.2009 в 20:33. Причина: очепятку поправил
Hubbitus вне форума  
Старый 04.06.2009, 00:36     # 7
Plague
Administrator
 
Аватар для Plague
 
Регистрация: 06.05.2003
Адрес: Московская Подводная Лодка
Пол: Male
Сообщения: 12 028

Plague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague Демиург
Plague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague Демиург
поверьте, мне очень конечно интересно послушать все это, но, я вроде достаточно хорошо описал вопрос в заголовке.
посему предлагаю закончить с общими рассуждениями и перейти в реалити:
есть/нет - как.
всё. еще раз говорю - возможность сорсов не может оставляться только для того чтоб пугать начальников.
если только для этого - то в топку эту систему, я буду компилить через ./configure (и поверьте, здесь как раз если вопросы и есть, то их знааачительно меньше, и спрашивать их я буду в отдельном топике, если приспичит)

если кто-то в теме по сабжу топика - очень хочу услышать.

ps.
Hubbitus & all, забудте про бинары, я не собираюсь их разбирать. меня интересуют возможности внесения опциями команд изменений в что нить типа
Код:
dpkg-buildpackage -rfakeroot -b -d -us -uc -tc -v -j10
зачем это всё существует? не нужно дальше демагогии, всё равно не убедите, давайте по сабжу темы. нет решений - пускай топ тонет.
dixi.

pss. переименовал название немного, чтоб не было разночтений
__________________
все "спасибы" - в приват и в репутацию! не засоряйте форум!!!!
~~~~~~~~~~~~~~~~~~~~~~

The time has come it is quite clear, our antichrist is almost already here.
M.M.
Plague вне форума  
Старый 04.06.2009, 23:33     # 8
noname
Full Member
 
Аватар для noname
 
Регистрация: 06.03.2003
Адрес: Earth
Сообщения: 761

noname Имеются все основания чтобы гордиться собойnoname Имеются все основания чтобы гордиться собойnoname Имеются все основания чтобы гордиться собойnoname Имеются все основания чтобы гордиться собойnoname Имеются все основания чтобы гордиться собойnoname Имеются все основания чтобы гордиться собойnoname Имеются все основания чтобы гордиться собойnoname Имеются все основания чтобы гордиться собойnoname Имеются все основания чтобы гордиться собойnoname Имеются все основания чтобы гордиться собойnoname Имеются все основания чтобы гордиться собой
>в частности, пытаемся собрать php5-mysql:
>#apt-get source -b php5-mysql

причем тут флаг -b ?
-b, --compile, --build
Compile source packages after downloading them.
до того как скомпилить мы должны его изменить ?

вобщем результатом apt-get source php5-mysql
будет скачаный php5 source

php5-5.2.9.dfsg.1 php5_5.2.9.dfsg.1-4.diff.gz php5_5.2.9.dfsg.1-4.dsc php5_5.2.9.dfsg.1.orig.tar.gz

идем в php5-5.2.9.dfsg.1/debian
cd php5-5.2.9.dfsg.1/debian

открываем файл rules , немного скролим и видим все те опции ./configure которые можно задать .

>какого оно вцепилось хваткой питбуля в >зависимость libmysqlclient15-dev (mysql-5.0), когда у >меня рядом стоит libmysqlclient-dev 5.1.34-1 MySQL >database development files, и тот самый "./configure >итд" его замечательно видит?

далее идем смотрим файл control
и видим , что там для пакета php5-mysql
есть зависимость
libmysqlclient15off так что все ок , можно отредактировать по вкусу .

далее
после изменений
debuild -us -uc
соберет все пакеты указаные в debian/control
и и положит в ../ относительно source .

помоему довольно не плохо , особенно если есть собственный репозитарий с кототрого можно потом ставить бинарные пакеты .
__________________
Смерть фашистским оккупантам.
noname вне форума  
Старый 04.06.2009, 23:59     # 9
Plague
Administrator
 
Аватар для Plague
 
Регистрация: 06.05.2003
Адрес: Московская Подводная Лодка
Пол: Male
Сообщения: 12 028

Plague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague Демиург
Plague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague ДемиургPlague Демиург
Цитата:
Сообщение от noname Посмотреть сообщение
причем тут флаг -b ?
-b, --compile, --build
Compile source packages after downloading them.
просто я по опыту БСД привык менять все опциями строки непосредственно одной командой. например, mysql собираю вот так:
Код:
make WITH_CHARSET=utf8 WITH_XCHARSET=all WITH_COLLATION=utf8_general_ci WITH_OPENSSL=yes WITHOUT_INNODB=yes BUILD_OPTIMIZED=yes WITH_ARCHIVE=yes WITH_CSV=yes -Dlocalstatedir="/usr/mysql" install
тоесть как видно, все действия в одном флаконе. удивительно, что здесь сие не предусмотрено. но всё равно спасибо.

ps. было б здорово, если была б опция на отключку предустановленных в rules параметров и задания своих. для игнорирования зависимостей как раз ключ -d есть.
__________________
все "спасибы" - в приват и в репутацию! не засоряйте форум!!!!
~~~~~~~~~~~~~~~~~~~~~~

The time has come it is quite clear, our antichrist is almost already here.
M.M.
Plague вне форума  

Теги (метки)
deb-src, debian, dpkg, dpkg-buildpackage


Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 15:49.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.