![]() |
Поделиться |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Поделиться |
![]()
Сообщение
#1
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 4384 Регистрация: 17.9.2009 Вставить ник Цитата Пользователь №: 1617 Страна: Россия Город: Санкт-Петербург Пол: Муж. Репутация: ![]() ![]() ![]() |
Предлагаю в эту тему складывать документацию ( или ссылки на нее ) по поводу спеков, макросов , сборки пакетов , хашера и подобных вопросов нужных начинающему сборщику / кодеру / программисту. На эту мысль меня натолкнула отличная инструкция от Анатолия которая как-то незаметно утонула в недрах форума ALT Linux , вместе с моими бреднями по этому вопросу. Вчера как раз развлекался сборкой пакета в чруте, вспомнил про инструкцию Толи посмотрел - отличная вещь.
Прибьем ее сюда гвоздями , думаю Анатолий возражать не будет ![]() ![]() Сообщение отредактировал kostyalamer - 29.11.2011, 21:36 |
|
|
![]() |
![]()
Сообщение
#2
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 4384 Регистрация: 17.9.2009 Вставить ник Цитата Пользователь №: 1617 Страна: Россия Город: Санкт-Петербург Пол: Муж. Репутация: ![]() ![]() ![]() |
По просьбам трудящихся небольшая инструкция Как собирать пакеты в hasher-е из src - х:
для начала ставим hasher: Установка и настройка -Взято отсюда : http://www.altlinux.org/Hasher/%D0%A0%D1%8...%82%D0%B2%D0%BE Цитата Установка hasher в Sisyphus и дистрибутивах ALT Linux располагается в пакетах hasher, hasher-priv и легко устанавливается: # apt-get install hasher Добавление пользователя hasher использует специальных вспомогательных пользователей и группу hashman для своей работы, поэтому каждого пользователя, желающего использовать hasher, перед началом работы нужно зарегистрировать: # hasher-useradd USER Эта команда создаёт вспомогательных пользователей USER_a и USER_b и добавляет пользователя USER в группы hashman, USER_a и USER_b. Поскольку hasher-useradd добавляет пользователя в группы, пользователю необходимо перелогиниться (открытия нового терминала в X недостаточно; su - $USER достаточно) перед началом работы с hasher. Настройка сборочной среды Для работы hasher требуется создать директорию, в которой будет строиться сборочная среда: $ mkdir ~/hasher В моем случае вместо USER пишем k ![]() Дальше немножко моих подредактированных бредней отсюда: http://forum.altlinux.org/index.php/topic,...html#msg103740: Цитата Так как пакечу в основном собственные проги то для их сборки пользуюсь Etersoft-build-utils и buildreq до кучи, что и советую делать всем кто пакетит свои программы . Дело в том что все необходимое итак ставится в систему при их написании. После того как вы собрали (думаю не с первого захода) свои пакеты командой rpm -ba блабла.spec, закидываем готовую src-ху в hasher и если Вы не в тиме ( а если в тиме зачем глупые вопросы задавать ![]() hsh --no-sisyphus-check блабла.src.rpm. Идем пьем кофе и если сборочные зависимости у вас правильные и интернет более-менее быстрый ( а еще лучше подключено локальное зеркало с бранчем ) то через некоторое время пакеты собираются. Но это еще не все , это только означает что ваш пакет может собрать другой человек в своей системе на том же бранче, и не более того. А вот теперь самое интересное берем minimal от NotHAM для бранча5,1или последний wmsmall для бранча p6 ( ставим его в виртуалку или на раздел диска ) и туда пытаемся поставить ваш *.rpm. Весьма вероятно что сразу обломаетесь напоровшись на проблемы с зависимостями. ( кстати у меня минималка устанавливается минут за 20, не многим больше чем собираются пакеты в хашере ). Чешете репу, ставите на нее пакеты вручную, добиваясь того что rpm у вас поставится. После чего идете в основную систему, добавляете зависимости в спек и собираете все по-новой ![]() Потом берете свежую минималку и снова ставите пакет. В результате будет понятно что пакет не только можно пересобрать (hasher), но он еще и будет работать ![]() Два небольших замечания: 1)что бы пакеты были заданной архитектуры ( а не pentium4 какие-нибудь ) используется ключ --target, я пользуюсь архитектурой i686 и собираю такой командой: Код $ hsh --no-sisyphus-check --target=i686 путь/имя_пакета 2) как уже писал выше хашер перестал делать готовую репу, для генерации недостающих файлов делаем в моем случае: Код $ genbasedir --topdir /home/k/hasher/repo/i686/
Сообщение отредактировал kostyalamer - 4.12.2011, 0:20 |
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 17.6.2025, 0:49 |