7.5.1. Установка из исходных текстов
7.5.1. Установка из исходных текстов
Бесплатное распространение исходных текстов программ — именно то, что делает Linux уникальной операционной системой и составляет одно из Величайших Достижений Человечества. Поэтому традиционный способ распространения приложений под Linux — это архивы исходных текстов (в просторечии — тарболлы).
Обычно имя файла, содержащего такой архив, имеет двойное расширение; например, tar.gz или tar.bz2. Это означает, что данный файл получился в результате работы сначала архиватора tar (Таре Archive, по первоначальному назначению — работе с ленточными накопителями), а потом компрессора gzip или bzip2. Чтобы распаковать архив, нужно применить сначала декомпрессор gunzip или bunzip2, после чего разархивировать его командой tar.
Иногда расширение только одно: tgz. В этом случае нужно запускать разархиватор tar с ключом, указывающим ему на необходимость применить фильтр-декомпрессор gunzip.
Формат команды tar:
tar [ключи] [файл_архива] [архивируемые файлы и/или каталоги]
Подробные сведения о ключах команды tar ищите на man-странице, я перечислю только самые употребительные:
? с (create) — создать архив;
? x (eXtract) — извлечь файлы из архива;
? t (lisT) — показать содержимое архива;
? v (verbose) — выводить на консоль подробный отчет о своей работе;
? f — работать с файлом, а не ленточным накопителем;
? z — применить фильтр-компрессор при создании архива или декомпрессор при распаковке.
Архивный файл обычно содержит дерево каталогов, которое после распаковки будет создано в вашем текущем каталоге, или, по случайной небрежности создателя архива, — несколько деревьев и файлов россыпью: в этом случае каталог для распаковки вам нужно создать вручную. Таким образом, первый шаг при установке из исходных текстов пакета program3.14.tar.bz2 — распаковка — выглядит так:
$ bunzip2 program3.14.tar.bz2
$ tar tvf program3.14.tar # проверьте, есть ли объемлющий каталог
$ ^tv^xv # оболочка bash превратит это в команду tar xvf program3.14.tar
Следующий шаг — собственно установка. Перейдите в распакованный каталог (обычно он называется < имя_пакета-версия > ) и прочитайте все README-подобные файлы, которые там найдете. Обычная процедура установки состоит из трех этапов:
1. $ ./configure # помните, что текущего каталога в $РАТН нет?
Сценарий configure, приложенный к архиву, опрашивает компоненты вашей системы с целью определить, сможет ли устанавливаемый пакет собраться и заработать именно у вас и что в нем для этого надо «подкрутить». При успешном завершении он создает файл Makefile — основной документ для сборочной утилиты make, содержащий инструкции и необходимые параметры (пути к заголовочным файлам, библиотекам и т.п.) для компиляции и сборки программ пакета.
2. $ make
Собственно компиляция и сборка.
3. $ make install
Установка собранных программ пакета, конфигурационных файлов и справочных страниц в каталога, указанные в Makefile. Обычно исполняемые файлы помещаются в каталог /usr/bin, а man-страницы — в /usr/man, но после этапа конфигурирования ничто не мешает отредактировать Makefile вручную.
После этого можно, прочитав приложенную к пакету документацию, запустить программу.
Часто этими тремя этапами процедура установки и исчерпывается, но не менее часто неприятности начинаются уже на этапе конфигурирования: сценарий configure обнаруживает, что необходимая для этою пакета библиотека у вас не установлена. Что ж, найдите и установите ее и снова запустите сценарий configure. Он сообщит о нехватке чего-нибудь другого... но при достаточном терпении, времени и дешевом Интернете эти проблемы решаются.
На этапе компиляции и сборки можно столкнуться с тем, что нужные заголовочные файлы и библиотеки называются по-другому или расположены в другом месте, чем ожидал разработчик. Придется разбираться в сообщениях компилятора и утилиты make, подсовывать вместо недостающих файлов символические ссылки на имеющиеся и выполнять другие нетривиальные действия, помогающие короче познакомиться с вашей операционной системой.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
Дерево исходных кодов ядра
Дерево исходных кодов ядра Дерево исходных кодов ядра содержит ряд каталогов, большинство из которых также содержит подкаталоги. Каталоги, которые находятся в корне дерева исходных кодов, и их описание приведены в табл. 2.1.Таблица 2.1. Каталоги в корне дерева исходных
Использование дерева каталогов исходных кодов ядра
Использование дерева каталогов исходных кодов ядра В идеале модуль является частью официального ядра и находится в каталоге исходных кодов ядра. Введение вашей разработки непосредственно в ядро может вначале потребовать больше работы, но обычно такое решение более
Компиляция вне дерева исходных кодов ядра
Компиляция вне дерева исходных кодов ядра Если вы предпочитаете разрабатывать и поддерживать ваш модуль отдельно от дерева исходных кодов ядра и жить жизнью аутсайдера, просто создайте файл Makefile следующего вида в том каталоге, где находится модуль.obj-m := fishing.oТакая
Работа с пакетами исходных текстов
Работа с пакетами исходных текстов Всё сказанное выше относилось к бинарным пакетам. Однако в утилите apt предусмотрены и средства для работы с пакетами исходных текстов. Так, с помощью внтуренней команды source можно просто скачать пакет, указанный в качестве её аргумента —
10.3. Компиляция ПО из исходных текстов
10.3. Компиляция ПО из исходных текстов Если rpm-пакеты с необходимым вам программным обеспечением нужно еще поискать (и не всегда можно найти), то tar-gz-архив любого ПО для Linux найдется в Интернете непременно. В некоторых случаях такие архивы содержат исполняемые модули
10.3.2. Инсталляция пакетов ПО из исходных текстов
10.3.2. Инсталляция пакетов ПО из исходных текстов Теперь, когда мы получили общее представление о компиляции программ на языке С, можно рассмотреть обращение с пакетами программ, распространяемыми в виде исходных кодов. Первое, что надо сказать в этой связи, это то, что для
2.6.1.Традиционный способ установки: установка из исходных текстов
2.6.1.Традиционный способ установки: установка из исходных текстов Этот способ заключается в том, что программа распространяется не в собранном виде, а в виде исходных текстов. Данный способ называется традиционным, потому что он был первым способом установки программ до
16.3.2. Второй способ: из исходных текстов
16.3.2. Второй способ: из исходных текстов Как я уже говорил, это более сложный способ, но у него есть свои преимущества. Во-первых, у вас появится возможность использовать самые последние версии серверов Apache, MySQL и интерпретатора РНР, которых нет в составе даже самого нового
17.3.3. Второй способ: из исходных текстов
17.3.3. Второй способ: из исходных текстов У этого способа есть свои преимущества. Во-первых, у вас появится возможность использовать самые последние версии серверов Apache, MySQL и интерпретатора PHP, которых нет в составе даже самого нового дистрибутива Linux. Во-вторых, вы сами
Об исходных текстах, приведенных в книге
Об исходных текстах, приведенных в книге Все сколько-нибудь значительные фрагменты кода собраны в архив, который можно загрузить из сети. Этот архив есть на сайте www.awprofessional.com и на моем собственном сайте (www.rubyhacker.com).Он предлагается в виде tgz-файла и в виде zip-файла. При
11. Деловая экология открытых исходных текстов
11. Деловая экология открытых исходных текстов Сообщество разработчиков открытых программ организовало себя таким способом, который имеет тенденцию усиливать производительность при разработке. В мире Linux, в частности — экономически существенным является тот факт, что