Pull to refresh

Comments 44

checkinstall как то сам умеет подхватывать все зависимости? Или ручками вписывать?
./configure вывалится с ошибкой, если будут неудовлетворенные зависимости.
Я имел в виду чтобы потом другим передать этот пакет и они не думали каких еще пакетов им не хватает для запуска, т.е. чтобы в deb пакете заполнилось поле с требуемыми пакетами.
Насколько я помню, checkinstall предлагает заполнить 10 полей, с зависимостями в том числе, вручную.
Да вот как раз руками и не хочется заполнять поле с зависимостями. Когда для себя делаешь — фиг с ним, т.к. все нужные пакеты поставились еще до компиляции, а вот кому то надо передать это и фигня выходит.
checkinstal — это фактически make install в fakeroot с записью действий и последующей сборкой пакета. Этакий quick&dirty для сборки пакетов.
Второй командой мы удовлетворили зависимости.Насчёт вашего вопроса-вроде да.
Такое ощущение, что сообщение писалось на скорую руку.
Да.это фактически так.
такое ощущение, что смотрите на форму а не на содержание.
Спасибо автору, было полезно
Рад стараться.Ведь знание заточённое-бесполезное знание.
Я так понимаю что auto-apt тут нужен только в том случае если такого пакета нет в репозиториях?
Иначе зависимости можно устанавливать просто через apt командой
apt-get build-dep имя-пакета
Иногда требумой программы в репозитариях нет и приходится компилировать из исходников.
Ну да, я частенько компилирую и те которые есть)) Например захотелось кастомный nginx или еще что-то…
С KTorrent как я понимаю данный фокус не пройдет? Он через cmake без ./configure собирается, то есть на втором пункте уже загвоздка получается
После make выполнить sudo checkinstall -D (R или S) и установить пакет. cmake не для сборки нужен, а для генерирования makefile или какая там у Вас система.
Имел ввиду, что в случаи с cmake все равно придется самому с необходимыми библиотеками для сборки копаться, или все же есть метод для автоматического нахождения и установки?
sudo apt-get build-dep ktorrent
Это поможет. Хотя если в качестве wm используется KDE, предложенные пакеты уже будут присутствовать.
Я про сборку а не про библиотеки для работы. Буквально на днях на Kubuntu 12.04 появилась необходимость его обновить, в репозитариях последняя версия 4.1.3. Пришлось качать исходники с офф сайта и собирать, но тк на Kubunte еще ни разу в жизни ничего ручками не собирали cmake раз 10 ругался на отсутствие библиотек и инструментов для сборки. Собственно вопрос как раз об этом, есть ли возможность автоматически выкачивать и ставить необходимые для сборки библиотеки/инструменты? Я так понял sudo auto-apt update && auto-apt -y run ./configure на основе configure этим и занимается?
А я Вам о чем. Это же build-dep.
Или Вы про build-essential? Он и так должен быть установлен перед сборкой)
auto-apt делает тоже, что и apt-get build-dep, но может использоваться и для пакетов, отсутствующих в репозитории.
Разве apt-get build-dep ktorrent знает что необходимо для сборки KTorrent из исходников? Мне всегда казалось она найдет только то, что необходимо для работы с данным пакетом. Если не прав, то прошу прощения.
Знает, ведь ktorrent присутствует в репозитории. То, что нужно для работы, установится по apt-get install.
Иногда бывают разные случаи.Всё зависит от авторов программы.Всё нужно рассматривать индивидуально.Единого пути нет.Большинство-укладывается в подобный путь.Большего и не надо.
make не используется в данном случае. Хотя да, checkinstall и с make можно использовать.
>3)Теперь командой checkinstall -D создадим deb-пакет.

Не спортивно!
Извините, иногда некоторым важней результат, чем процесс.Мне тоже нравятся TRUE'шные решения.Предложите свой вариант-пусть и другие узнают.Все только выиграют от этого.
раньше под слаку пакеты делал именно чекинсталлом, но он имеет некоторые недостатки…

а по поводу пакетов под убунту то тут вполне исчерпывающая статья на тему сборки пакета.
checkinstall также умеет rpm и tgz, не только deb.
UFO just landed and posted this here
Почему же.Всё объясняется, правда не очень подробно.
> Теперь командой sudo checkinstall -D создадим deb-пакет, использующийся в дистрибутивах основанных на Debian, например Ubuntu.
> Теперь этот пакет можно устанавливать: либо командой sudo dpkg -i pocket_name.deb

Неправильно. Команда

sudo checkinstall -D

уже установит пакет, устанавливать его отдельной командой не нужно.
Реально пора вводить пометку уровня поста (для начинающих, для специалистов и т.д.) на хабре, т.к. заходишь, думаешь что-то новое прочитать, а получаешь то, что уже давно известно :(
Это конечно все круто, но не вижу альтернатив для rpm-based систем.
Также если запустить sudo checkinstall -R получим rpm-пакет, применяемый в Fedora, RHEL, ASP Linux, ALT Linux, Mandriva, openSUSE.
checkinstall в репозиториях федоры не вижу. Не все сидят под бубунтой.
Sign up to leave a comment.

Articles

Change theme settings