Шрифт:
Интервал:
Закладка:
2. $ make
Собственно компиляция и сборка.
3. $ make install
Установка собранных программ пакета, конфигурационных файлов и справочных страниц в каталога, указанные в Makefile. Обычно исполняемые файлы помещаются в каталог /usr/bin, а man-страницы — в /usr/man, но после этапа конфигурирования ничто не мешает отредактировать Makefile вручную.
После этого можно, прочитав приложенную к пакету документацию, запустить программу.
Часто этими тремя этапами процедура установки и исчерпывается, но не менее часто неприятности начинаются уже на этапе конфигурирования: сценарий configure обнаруживает, что необходимая для этою пакета библиотека у вас не установлена. Что ж, найдите и установите ее и снова запустите сценарий configure. Он сообщит о нехватке чего-нибудь другого... но при достаточном терпении, времени и дешевом Интернете эти проблемы решаются.
На этапе компиляции и сборки можно столкнуться с тем, что нужные заголовочные файлы и библиотеки называются по-другому или расположены в другом месте, чем ожидал разработчик. Придется разбираться в сообщениях компилятора и утилиты make, подсовывать вместо недостающих файлов символические ссылки на имеющиеся и выполнять другие нетривиальные действия, помогающие короче познакомиться с вашей операционной системой.
7.5.2. Установка из бинарных пакетов
Как это делается и что для этого нужноКак ни гибок способ установки приложений из исходных текстов, позволяющий установить программу, созданную для другого дистрибутива, и настроить ее под конкретную системную среду, вчерашние пользователи Windows тоскуют по простоте setup.exe. Хорошим компромиссом считается распространение приложений в виде заранее собранных на определенной платформе бинарных пакетов.
Пакет содержит исполняемые файлы и библиотеки, подлежащие установке, а также разную служебную информацию об этом пакете: какие пакеты необходимы для его работы (зависимости), с какими пакетами он конфликтует, какие действия следует выполнить при его установке, список файлов, сведения о разработчике.
В мире Linux известны два формата бинарных пакетов: RPM от компании Red Hat, используемый не только в клонах Red Hat, но и в других популярных дистрибутивах: Mandrake, SuSE, ASPLinux, ALTLinux, Black Cat, и DEB, разработанный для Debian Linux и применяемый в его потомках: Knoppix, Corel Linux, Lindows. Пакеты дистрибутива Slackware — это просто сжатые архивы .tgz, не поддерживающие зависимостей. От архивов исходных текстов они отличаются только тем, что в них находятся заранее скомпилированные программы.
Набор утилит для установки, конфигурирования, удаления и ведения базы пакетов определенного формата называется системой управления пакетами. Наиболее распространены системы:
♦ RPM — менеджер пакетов формата RPM;
♦ DPKG — система управления пакетами DEB;
♦ APT — менеджер пакетов, поддерживающий автоматическое разрешение зависимостей, разработанный для Debian и заимствованный RPM-дистрибутивами.
На сегодняшний день самым распространенным в бывшем СССР средством управления пакетами является RPM, на котором я остановлюсь подробнее.
Менеджер пакетов RPMПервоначально название программы RPM расшифровывалось как Red Hat Package Manager, но в соответствии с соглашением GNU о рекурсивном именовании (GNU's Not Unix) сейчас оно читается как RPM Package Manager. Это открытая пакетная система, позволяющая создавать пакеты из исходного и двоичного кода, так что двоичные файлы легко установить и сопровождать, а исходный код легко собрать. Система также поддерживает базу данных обо всех установленных пакетах и входящих в них файлах.
Пакеты формата RPM — это файлы с расширением .rpm. В имени файла обычно присутствуют название и версия приложения, выпуск пакета и платформа, для которой он собран. Например, для пакета software-3.0-2.i386.rpm: 3.0 — это версия программы software, 2 — выпуск пакета, i386 — платформа Intel 386. Обратите внимание на разницу между версией программы и выпуском пакета: номер версии назначается автором программы и характеризует ее саму, а номер выпуска — сборщиком пакета и характеризует этот пакет. В некоторых случаях, даже если программное обеспечение не изменилось, бывает необходимо его переупаковать.
Самыми «универсальными» пакетами являются пакеты, рассчитанные на архитектуру Intel 386. Собранная таким образом программа должна работать на любом процессоре Intel, начиная с 80386DX (или совместимого с ним). А вот если у вас процессор 80486, пакет, рассчитанный для работы с архитектурой 80586 (Pentium), скорее всего, не установится в вашей системе. Обычно для процессоров архитектуры CISC (с набором команд x86) используются следующие обозначения:
♦ i386 — Intel 80386DX;
♦ i586 — Intel Pentium (MMX), AMD K5 (K6);
♦ i686 — Intel PPro, Celeron, PII, PIII, PIV.
Узнать о своем процессоре можно по команде uname -а.
В простейшем случае команда установки пакета выглядит так:
$ rpm -i <пакет>.rpm
Установку можно производить не только с локального диска, но и по протоколу FTP:
$ rpm -i ftp://somehost.domain/pub/package.rpm
Перед установкой пакета менеджер rpm проверит его зависимости, то есть другие пакеты, которые необходимы новой программе или, наоборот, конфликтуют с ней. Если установлены все нужные программе пакеты и ни с одним из установленных она не конфликтует, менеджер rpm установит программу, в противном случае сообщит вам о проблеме. Если нужен дополнительный пакет, просто установите его. А вот если программа конфликтует с уже установленным пакетом, то вам нужно будет выбрать, какой пакет вам больше нужен: уже установленный или новый.
Для удаления пакета используется команда:
$ rpm -е <пакет>
При удалении программы менеджер пакетов тоже проверяет зависимости между пакетами. Если удаляемый пакет нужен каким-нибудь другим пакетам, удалить его вы не сможете.
При установке программы я рекомендую указывать два дополнительных ключа: -h и -v. Первый требует показывать индикатор выполнения в виде строки, заполняющейся символами #, а второй выводит дополнительные сообщения.
Для пропуска проверки зависимостей нужно использовать ключ --nodeps. Например, у вас установлен агент отправки почты (MTA — Mail Transfer Agent) postfix, а вы хотите установить программу того же назначения sendmail, которая с ним конфликтует. Просто так удалить пакет postfix вы не сможете, потому что он нужен многим почтовым клиентам. Удаляйте его командой:
$ rpm -е --nodeps postfix
После такого удаления нормальная работа других программ, использующих MTA, невозможна, поэтому вам сразу же нужно установить программу sendmail или другой агент MTA.
Ключ -U служит для обновления программ. Я рекомендую использовать его и при установке программ, потому что если устанавливаемый пакет у вас уже стоял, то будет произведено его обновление, а если нет, то будет просто установлен новый пакет:
$ rpm -Uhv <пакет>
Просмотреть все установленные пакеты можно с помощью команды:
$ rpm -qa | less
Если вам требуется узнать, установлен ли определенный пакет, выполните команду:
$ rpm -qa | grep <пакет>
Просмотреть общую информацию о пакете можно с помощью команды:
$ rpm -qi <пакет>
а информацию о файлах, которые установит этот пакет:
$ rpm -ql <пакет>
Чтобы узнать, какому пакету принадлежит некоторый файл, выполните команду:
$ rpm -qf <файл>
Графические менеджеры пакетовМенеджер пакетов rpm является мощным средством для произведения операций над пакетами — создание, установка, обновление, удаление. Однако интерфейс командной строки нравится далеко не всякому начинающему администратору.
Существуют и графические (под X Window) реализации менеджера пакетов — например, для оконной среды KDE разработан kpackage, для GNOME — gnorpm, аналогичный по своим функциям. Какую из этих программ использовать — дело вкуса и привычки (я вообще обхожусь одним rpm).
Скажу несколько слов о программе kpackage (рис. 7.7).
Рис. 7.7. Просмотр установленных пакетов
В функции программы kpackage входит:
1. Установка и удаление пакетов;
2. Получение сведений о пакете;
3. Проверка зависимостей пакета;
4. Поиск файлов и пакетов в базе RPM.
Вы можете установить пакет со своего жесткого диска, с инсталляционного компакт-диска или по протоколу FTP. Для установки пакета выберите в меню команду File→Open и введите путь (или URL) к каталогу с пакетами. Открывать подкаталоги можно и в окне выбора пакетов (рис. 7.8). Выбрав пакет, нажмите OK и в появившемся окне установки (рис. 7.9) закажите режим установки. Поставьте флажок Test, если вы хотите только проверить зависимости пакета, не устанавливая его.
- Операционная система UNIX - Андрей Робачевский - Программное обеспечение
- Разработка приложений в среде Linux. Второе издание - Майкл Джонсон - Программное обеспечение
- Искусство программирования для Unix - Эрик Реймонд - Программное обеспечение
- Linux - Алексей Стахнов - Программное обеспечение
- Fedora 8 Руководство пользователя - Денис Колисниченко - Программное обеспечение
- Недокументированные и малоизвестные возможности Windows XP - Роман Клименко - Программное обеспечение
- Изучаем Windows Vista. Начали! - Дмитрий Донцов - Программное обеспечение
- Windows Vista - Виталий Леонтьев - Программное обеспечение
- Архитектура операционной системы UNIX - Морис Бах - Программное обеспечение
- Windows Vista. Трюки и эффекты - Юрий Зозуля - Программное обеспечение