4.4. Установка программ по исходным текстам

Проблема
Требуется построить программу по исходным текстам, но вам трудно разобраться
в дебрях tar-архивов, Ьг2-архивов, make-файлов и т. д.
Решение
Распакуйте tar-архив. Запустите сценарий configure, затем make и install.
Начните с каталога, в котором хранятся tar-архивы и каталоги с исходны ми текстами. В следующем примере используется программа JOE (Joe's Own
Editor):
# cd /usr/src/downloads
# tar zxvf joe-2.9.8.tar.gz
# cd joe-2.9.8
# l s
# less README
# less INFO
# ./configure --help
# ./configure «options, i f needed>
# make
# make install | tee joe-makeinstall
Последняя команда сохраняет выходные данные установки в текстовом файле
joe-makeinstall.
Некоторые программы архивируются утилитой bunzip2 вместо более традици онной утилиты gzip. Распаковка архивов .bz2 осуществляется так:
# tar jxvf joe-2.9.8.tar.bz2
Удаление программ, построенных по исходным текстам, производится командой
# make uninstall
Такой способ работает только в том случае, если автор программы включил
поддержку make uninstall. Если файлы приходится удалять вручную, сохраните
вывод make install в текстовом файле. Другой способ — построение списка уста новленных файлов (см. раздел 4.3).
Комментарий
Описанная в этом разделе процедура считается стандартным способом удаления
программ, построенных по исходным текстам. Тем не менее не все авторы про грамм следуют общепринятым правилам. Обязательно просмотрите всю докумен тацию к программе.
Прежде всего обратите внимание на параметры конфигурации. Некоторые про граммы (такие, как Apache) поддерживают десятки параметров компиляции. Для
обеспечения безопасности откомпилируйте поддержку только тех возможностей,
которые будут реально использоваться. Это особенно важно для серверов, доступ
к которым осуществляется из непроверенных сетей (скажем, почтовых и веб-сер веров).
Аргументы в пользу компиляции программ по исходным текстам:
О вы можете включить поддержку тех возможностей, которые вам необходимы;
О оптимизация программ для конкретной архитектуры;
О полный контроль над ходом установки.
Впрочем, есть и недостатки:
О возможные проблемы с обновлением и удалением;
О до «кошмара зависимостей» рукой подать;
О на компиляцию большой программы может потребоваться несколько часов.
70 Глава 4. Установка программ по исходным текстам
Некоторые серверы должны строиться по исходным текстам. Например, веб сервер Apache строится по исходным текстам для обеспечения полной настройки
и оптимизации.
Что касается настольных систем, они слишком сложны и громоздки для само стоятельной компиляции. В таких случаях проще воспользоваться пакетными ди стрибутивами Linux.
См. также
info tar, make(l), bzip2(l).