Как установить софт из исходников под linux?

Как установить софт из исходников под linux?

Причины установки софта из исходников:
- Нужного пакета (или нужной версии) может не быть в репозитариях Вашего дистрибутива.
- Программа, установленная из исходников, может быть сконфигурирована по Вашему желанию.
- Вобщем-то, полезный опыт!:)

Инструкция

Уровень сложности: Сложно

Что вам понадобится:

  • OS Linux

1 шаг

Получение исходников.
Закачиваем исходники. Здесь обычно есть два варианта:
1. Закачать готовый архив в формате tar.gz
2. Взять файлы с CVS репозитория. В CVS обычно находится софт “в процессе разработки”, более свежий, но и менее протестированный.

2 шаг

Распаковываем тарболы. Это можно сделать при помощи любого графического архиватора (например File Roller в Гноме), или же из консоли:

tar xvzf имя.архива.tar.gz

для архива ‘.tar.bz2’:

tar xvjf имя.архива.tar.bz2

3 шаг

Затем перемещаемся в распакованный таким образом каталог и внимательно читаем, что написано в файлах README и INSTALL. Этот шаг абсолютно необходим. Без него ничего работать не будет.

Если софт получен из CVS-репозитория, читаем инструкции разработчика на сайте по “бутстрапанию” (см. http://en.wikipedia.org/wiki/Bootstrapping_%28computing%29) пакета, если необходимо.

4 шаг

Конфигурирование и компиляция
Если инструкции требуют запуска скрипта с названием configure в качестве первого шага, сначала прогоняем:

./configure —help

и внимательно читаем, какие опции можно послать скрипту configure для правильного конфигурирования программы.
Затем запускаем:

./configure

с выбранными опциями. На этом этапе программе могут понадобиться зависимости, которые либо не установлены в нашей системе, либо не найдены скриптом configure. В первом случае, их надо найти и поставить, во втором — еще раз исследовать опции скрипта configure на предмет указания ему места, где искать нужные зависимости.

5 шаг

Если configure сработал нормально, запускаем make.
Здесь тоже возможны варианты. Если make завершается ошибкой, копируем ошибку в окошка ГУГЛА и смотрим, как наши товарищи по несчастью справились с подобной ошибкой. Иногда решения нет, и надо писать разработчику.

6 шаг

Установка
Если make прошел нормально, мы почти у цели.
Думаете, теперь надо прогонять make install? В сущности, можно и так (не забудьте стать рутом для этого).
Но Правильный Путь™ заключается в том, чтобы сделать теперь из скомпилированного исходника пакет для нашего дистрибутива и поставить его средствами штатного менеджера пакетов.

7 шаг

Создание пакета

checkinstall
Это одна из немалого количества программ для построения пакетов из исходников. Она не дистроспецифична и генерирует пакеты для самых распространённых пакетных менеджеров (в отличие от paco, который тоже всем хорош, кроме того, что держит свою базу пакетов).
В классической схеме сборки приложения из исходников, использующих automake (./configure && make && make install)’, эта утилита заменяет собой ’make install. Делая в принципе то же самое, но при этом регистрируя устанавливаемую программу в пакетной базе дистрибутива.

8 шаг

checkinstall -R

Построит и установит RPM пакет(для Fedora, Mandriva, SuSe, Alt, ASP…)

checkinstall -D

Создаст и установит DEB-пакет(для Debian, Ubuntu…)

checkinstall -S

Создаст и установит TGZ-пакет(для Slackware, Zenwalk, DeepStyle, Vektorlinux, Mops; в поставке дистра есть checkinstall, патченный самим Патриком…)

Имя пакета по умолчанию будет myNewUtil.
Версия: 1.2.3. После запуска checkinstall всегда просит ввести описание пакета, а также даёт возможность изменить имя, версию и т.д.

Советы и предупреждения:

  • Прежде чем устанавливать софт из исходников, убедитесь, что подходящего пакета в Вашем дистрибутиве нет!
  • Если что-то пойдёт не так, рассчитывать придется только на помощь разработчиков софта!
  • Убедитесь, что в системе установлены средства разработки – компилятор, библиотеки и заголовки для разных пакетов (многие дистрибутивы выделяют их в отдельные пакеты)

Обсуждение

Avatar_micro
Рейтинг
  1. +
  2. 0
Fuck (15:52 19.11.2008)

Миха, ты супер!!! класная статья!!! молодчинка одноклашка!!!

844_micro
Рейтинг
  1. +
  2. 1
MrFree (18:08 05.07.2009)

а лучше взять и прочесть README и INSTALL файлы, перевести их если что.
А то некоторый софт собирается не при помощи configure, а например cmake или qmake, а бывает ./autogen.sh прогнать нужно.

Avatar_micro
Рейтинг
  1. +
  2. 2
RTFM (18:39 12.12.2009)

Пара замечаний:
1. При распаковке архивов вида tar.gz tgz делаем “tar xzfv blabla.tar.gz -C /some/directory” где /some/directory это путь куда распакуется архив, в противно случае он будет извлечен в текущую директорию, аналогично для .tar.bz .tbz “tar xjfv blabla.tar.bz -C /some/directory”
2 Если файл INSTALL начинается со слов This is the generic file- это стандартный сгенерированный файл, в большинстве случаев ./configure && make && make install.

Avatar_micro
Рейтинг
  1. +
  2. 0
regedit32 (18:45 16.11.2010)

Это и правда сложно! Как, в принципе, и любая установка программы не из центра приложений, т.к. установочный файл в линукс сам не запускается, его обязательно из консоли надо запускать. А это куча проблем.

Ваш комментарий

Запросить инструкцию

Не нашли нужную пошаговую инструкцию?
Возможно, что кто-то из посетителей сайта сможет помочь. Оставьте запрос прямо сейчас, если Вы уверены, что эта тема ещё не освещена на нашем проекте!

Рейтинг
  1. +
  2. 7
4
9791