LINUX.ORG.RU

Сборка из исходников


0

0

Если собирать и устанавливать программы из исходников, возникнут потои проблемы с удалением или с зависимостями? Объясните нубу.

anonymous

Если просто ставить по make install - да.

Если будешь ставить средствами дистрибутива - то нет. А тут уже в разных дистрах по-разному. Где-то пакет надо собирать, где-то скрипты установки делать.

KRoN73 ★★★★★
()

Собирай в пакеты и устанавливай пакетным манагером.

anonymous
()

Вопрос не вполне корректен. Если Makefile умеет make uninstall или что-то вроде того, то никаких проблем с удалением не будет. Проблем с зависимостями как правило быть не может. Если Makefile генерируется автотулзами или cmake, то они тебе скажут чего им не хватает для сборки. В любом случае вывод cat README | less или cat INSTALL | less как правило помогает разабраться с зависимостями наверняка. Впрочем если вы опасаетесь, что вам понравится процесс и у вас возникнет от него зависимость, то я ничем не могу вас утешить. А вообще самое правильное это собрать пакет средствами дистрибутива. Правда я знаю только два дистра где этот процесс не превращается в геморой. А какой кстати у вас?

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

>Если Makefile умеет make uninstall или что-то вроде того, то никаких проблем с удалением не будет.

Ты в этом уверен? Пару месяцев назад собирал google desktop - эта шняга заменяла один из файлов (какая-то либа в /usr/lib), после чего, если сделать make uninstall, этот файлик ессесно удаляется, после чего rpm становится раком (пакет установлен, а файла нет). Всегда надо собирать пакет, чтоб такие вещи отлавливались ПМ.

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

Кстати, не подскажешь адрес мануала по сборке своих пакетов (rpm интересует).
Помню, когда-то на ЛОРе ссылка проскакивала, а найти не могу.

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

У меня дистр Ubuntu 8.04. Т.е надо собирать deb пакеты?

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

Сложновато для меня =) Буду разбираться. А если мне до сборки пакета нужно наложить патч. Есть исходники в /src, есть файл .diff Как его наложить?

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

Ты в этом уверен? Пару месяцев назад собирал google desktop - эта шняга заменяла один из файлов (какая-то либа в /usr/lib), после чего, если сделать make uninstall, этот файлик ессесно удаляется, после чего rpm становится раком (пакет установлен, а файла нет). Всегда надо собирать пакет, чтоб такие вещи отлавливались ПМ.

man rpm | grep rebuild

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

Еще один нубский вопрос. Опции доступные при сброке программы нужно смотреть только в документации? Или есть какой-то ключик у configure?

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

Вот пробую собрать deb пакет xmlrpc-c
configure и make проходят без ошибок.
$ dh_make

Type of package: single binary, multiple binary, library, kernel module or cdbs?
 [s/m/l/k/b]
выбираю l, т.к это библиотека.

в debian/rules раскомментировал dh_install

$ dpkg-buildpackage -rfakeroot
в конце пишет
mkdir /usr/include/xmlrpc-c
mkdir: невозможно создать каталог `/usr/include/xmlrpc-c': Permission denied
make[2]: *** [install-headers] Ошибка 1
make[2]: Выход из каталога `/home/ilya/Downloads/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00/include'
make[1]: *** [include/install] Ошибка 2
make[1]: Выход из каталога `/home/ilya/Downloads/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00'
make: *** [install] Ошибка 2
dpkg-buildpackage: сбой: fakeroot debian/rules binary возвратил код ошибки 2

Что делать? Запускать от рута? Зачем он создает /usr/include/xmlrpc-c ?

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