LINUX.ORG.RU

Как научить Генту собирать дебы?


0

1

Суть вопроса - есть у меня гента и убунта, требуется иногда что-то собрать в убунте - и целая история, куча dev-зависимостей и держать это в системе постоянно не хочется.

Но зачем - ведь есть же Гента, где стоят все конпеляторы и прочее!:)

Как бы научить её собирать деб-пакеты?Checkinstall-а почему-то не нашёл, хотя dpkg в дереве есть.Ну и собирать надо как-то обезличенно, ведь версии библиотек, зависимостей могут отличаться.

Как такое можно проделать?

★★

Раздвоение личности?

Hokum ☆☆☆☆
()
Ответ на: комментарий от wlan

>через чрут?

Зачем?Или я не понимаю о чем речь.Как тут чрут поможет?

В принципе, мелкие бинарники (попрбовал на ncmpcpp) и так рабочие, основной вопрос - как их запаковать в грамотный deb-пакет без лишних сложностей.

Раздвоение личности?

Хуже.Даже растроение.\(0_0)/

nitz ★★
() автор топика
Ответ на: комментарий от nitz

удобнее всё же сидеть на одном дистре, тогда можно где-то в одном месте всё собирать и юзать везде

Hokum ☆☆☆☆
()
Ответ на: комментарий от Hokum

Удобней-то удобней, но не так интиресно.

Нашёл пока только вот что-то похожее http://www.getonthenet.eu/creating-deb-packages-on-gentoo/ Но dpkg-buildpackage - это не юзерфрендли.Где же чекинсталл?Неужели только мне такого захотелось - ведь Гента как раз создана для сборок.

nitz ★★
() автор топика

Самый простой способ:
google://checkinstall+ebuild
А вообще действительно жалко, что portage не напрягаясь собирает rpm, а deb не умеет

proDOOMman ★★
()
Ответ на: комментарий от proDOOMman

>google://checkinstall+ebuild

Спасибо, кэп.

Не так-то просто - но да, нашёл.Юзов поделие не имеет и тянет жирный и ненужный мне rpm зачем-то.Ничего не поделаешь, придётся ставить.

Гм.Кстати, ведь можно же делать rpm и в Убунте переделывать их в дебы, алиен у меня имеется.Впрочем, rpm всё равно ставить тогда.Уж лучше сразу чекинсталл.

А как быть с обезличенностью пакетов?Как их собирать универсальными и неоптимизированными, при том что в Генту мне такие не надо ставить?Он ведь опции из make.conf наверное брать будет, или где?Пойду читать Гуголь...

nitz ★★
() автор топика

если цель быстро и просто собрать .deb пакет, то попробуйте melas
http://freshmeat.net/projects/melas


но я бы не стала ставить полученные deb-ы в дебиан или убунту, есть такое понятие как совместимость библиотек и пакетов, обычно все же дебианское лучше собирать в дебиане, убунтовое, несмотря на значительную общую часть -в убунте, а гентушное вообще тащить не нужно

ps: в генте есть свои бинарные пакеты tbz2

Sylvia ★★★★★
()
Ответ на: комментарий от Sylvia

А гдеже этот melas?Там нет ни загрузки, никакой информации, -лишь ссылка на непонятный сайт.(o_0)

А с чекинсталом и rpm>alien>deb ничего не получается.Что чуть посложнее простого бинарника - уже не работает, да и собираются через раз.А для бинарников смысла нет в этих лишних сущностях - и так можно в /usr/local/bin бросить...

Вобщем, фейл.Всё удоляю!

nitz ★★
() автор топика
Ответ на: комментарий от Sylvia

Спасибо.

Только я не понимаю как им пользоваться (^_^).Вроде установил-

./bin/mls --set-MLS_CONFIG_PREFIX=/usr/local install
-и как им dеб-пакеты делать?mls --help ничего внятного не содержит и гуголь про него не знает.

Видно этот проэкт умер - хотя редкие упоминания не такие старые.Даже странно.

nitz ★★
() автор топика
Ответ на: комментарий от nitz

mls-make-pkg --package=qutim --version=0.2-9 --arch=i386 --files=/var/tmp/install_root --type=deb --desc=«qutim - Qt4 based ICQ,XMMP,MRA client»

вот как-то так и делать...
но напишу еще раз, не стоит этим заниматься, зависимости будут поломаные

Sylvia ★★★★★
()
Ответ на: комментарий от Sylvia

Впринципе я тоже с тобой согласен, не пойму зачем это нужно.
// Я ответил на твое письмо

gRAyNDEr
()
Ответ на: комментарий от Sylvia

Спасибо еще раз.

Я посмотрел, это просто скрипты на баше оказывается.Можно их переделать под свои нужды.

А зависмости - я не планирую ставить что-то от_чего может зависеть, а то что само зависит, мелочь какую-нибудь.Т.е . в худшем сучае просто оно не будет работать.

nitz ★★
() автор топика
Ответ на: комментарий от nitz

Делай в дженте пакет с ключом -B — это без установки в систему. Потом перепаковывай из tbz2 в gzip-повый и скармливай alien в убунте, может быть даже и получится.

Lumi ★★★★★
()
Ответ на: комментарий от nitz

да и сам деб формат простенький, melas - так, велосипедный вариант )
я поэтому и выложила, что его легко адаптировать,
можно и tbz2 попробовать перепаковать меласом (распаковать и делать пакет) или через alien если он умеет,

собирать с -B без установки в систему (1 пакет,без зависимостей)
или с -b , будет установлено в систему, включая звисимости, но будут созданы и бинарные пакеты, из уже установленного можно сделать пакет через quickpkg , только см. опции сохранения конфигов в пакет.

Sylvia ★★★★★
()

Для чего нужна Ubuntu, если есть Gentoo и «иногда требуется что-то собрать»?

PayableOnDeath
()
Ответ на: комментарий от Lumi

Да, именно ему и говорил - просто немного продолжил мысль идеей apt-build'ом.

ТС, а что мешает перейти на Gentoo полностью?

blessed
()
Ответ на: комментарий от blessed

что мешает перейти на Gentoo полностью?

Нежелание.

У меня есть два автомобиля, телевизора и т.п.(подставить что угодно) -что мешает отказаться от второго и пользоваться лишь одним?

Вобщем всё получилось,немного поменял скрипт mls-make-pkg для большего юзерфрендли (чтоб вызывал emerge -B, копировал, брал параметр $1 как название и т.д. и т.п.), пакеты делаются - без всяких идиотских rpm-ов и чекинсталлов с ненужными зависимостями.

Правда не работают в основном (^_^).Рабочяя получается только всякая бинарная мелочь.Но и то хорошо.

Чтоб была понятна мотивация - я увидел что есть новая версия ncmpcpp с няшными разделителями между альбомов.В Генте элементарно поставил, в Убунте же

$ sudo apt-get build-dep ncmpcpp
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Заметьте, вместо libcurl4-dev выбирается libcurl4-gnutls-dev
НОВЫЕ пакеты, которые будут установлены:
  build-essential cdbs comerr-dev debhelper diffstat fdupes g++ g++-4.4 html2text
  intltool-debian krb5-multidev libc6-dev libcurl4-gnutls-dev libgcrypt11-dev
  libgnutls-dev libgpg-error-dev libgssrpc4 libidn11-dev libkadm5clnt-mit7
  libkadm5srv-mit7 libkdb5-4 libkrb5-dev libldap2-dev libncursesw5-dev
  libstdc++6-4.4-dev libtag1-dev libtasn1-3-dev linux-libc-dev po-debconf quilt
  zlib1g-dev
обновлено 0, установлено 31 новых пакетов, для удаления отмечено 0 пакетов, и 1 пакетов не обновлено.
Необходимо скачать 19,0MБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 63,3MB.
Хотите продолжить [Д/н]? 
-зачем?для простого бинарника?Я просто скопировал гентушный - он заработал.Вот и возникла идея сразу делать деб-пакеты.Ведь rpm Гента умеет делать.

nitz ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.