Чтение онлайн

на главную - закладки

Жанры

200 лучших программ для Linux
Шрифт:

Однако чтобы такая программа заработала, необходимо установить все остальные компоненты и библиотеки, которые она использует. Например, для популярной утилиты записи дисков K3B потребуется установить 48 библиотек и программ (рис. 1.1).

Рис. 1.1. Список зависимостей пакета K3B

Такие пакеты называются зависимостями. Большинство из них, вероятно, уже есть в системе, но если не будет хотя бы одного, то установить программу будет проблематично либо после установки она не будет иметь полную функциональность.

Зависимости бывают двух видов:

• жесткая (hard): обязательная, без нее программа, скорее всего, не будет работать;

• мягкая (soft): рекомендуемая, без нее программа работать будет, но, установив такой пакет, можно добавить приложению функциональность (например, работу с некоторым форматом файлов).

Именно поэтому, скачав всего один пакет, установить программу часто не получается.

Есть еще одна проблема, о которой необходимо знать. В отличие от Windows, релизов которой не так много, дистрибутивов Linux огромное количество. Они отличаются не только названием, так как Linux – это только ядро, разрабатываемое под руководством Линуса Торвальдса, а все остальное – это что-то вроде набора «Сделай сам». Эти наборы хороши, но часто не только не совместимы между собой, но и для каждой новой версии одного и того же дистрибутива потребуется специально собранный пакет. Не будем вдаваться в подробности, тем более что не все так плохо, так как в популярных решениях используются пакетные системы, скрывающие такие особенности, но об этом просто нужно знать.

Установка программ в Linux

Изначально Линус Торвальдс предоставлял пользователям только ядро, а остальное они компилировали сами. Сейчас ситуация полностью изменилась, и в современных дистрибутивах для установки программы достаточно одного щелчка кнопкой мыши.

Компиляция программ

Даже после появления пакетов, которые представляли собой уже скомпилированные программы, компиляция долгое время оставалась и для некоторых остается основным средством установки.

Примечание

Первые прекомпилированные наборы появились в дистрибутиве SLS Linux, который в начале 90-х годов был самым популярным дистрибутивом. Его создатели сочли неудобным самостоятельнную сборку приложений, поэтому пользователям были предложены не только само ядро Linux и основные утилиты, но и набор разнообразного программного обеспечения с простой программой установки. Все это поставлялось уже в скомпилированном виде, исходный текст прилагался только для самых основных компонентов вроде ядра. Кстати, основой популярных сегодня дистрибутивов Slackware и Debian послужил именно SLS.

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

Примечание

Человека, который отвечает за сборку пакета, называют maintainer, в Интернете часто можно встретить это слово в русской транскрипции – майнтейнер, или сборщик. Он отвечает за то, что пакет протестирован, работоспособен и его установка не вызовет сложностей. В процессе сборки он может использовать патчи (англ. patch – «заплатка»), изменяющие функциональность или устраняющие найденные ошибки. Однако таких людей мало, и все пакеты отслеживать трудно, поэтому проекты постоянно привлекают добровольцев.

Кроме этого, иногда требуется изменить функциональность программы при помощи патчей, не используемых майнтейнером. Последняя причина – это производительность: чтобы пакет работал на максимально большом количестве оборудования, его собирают с оптимизацией под определенный тип процессора – как правило, это i386, то есть под процессор Intel 80386, выпущенный еще в 1985 году. Встречаются сборки i486, i586 (Pentium MMX) и i686 (Pentium Pro), в последнее время появились сборки под 64-битные процессоры. Собирая программу самостоятельно, пользователь может скомпилировать ее под свой тип процессора, под мультипроцессорные системы и прочее. Эксперименты доказывают, что производительность получаемого пакета увеличивается (в зависимости от аппаратного обеспечения) от 10 до 200 % по сравнению с бинарными сборками, поставляемыми с дистрибутивом, и чем новее оборудование, тем больше эффективность такой сборки, хотя она не всегда нужна.

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

Внимание!

Для самостоятельной компиляции программ потребуются компилятор GCC, GNU Make и прочие утилиты. В некоторых дистрибутивах они по умолчанию не устанавливаются. И чтобы установить их, в Kubuntu необходимо выполнить команду sudo apt-get install build-essential.

Как правило, исходные файлы заархивированы в так называемый тарболл (tarball).

Архив, в зависимости от программы, которая использовалась при его создании, имеет суффикс .tar.gz или .tar.bz2 и имя типа program-х.хх, где program– это название программы, а х.хх – версия.

В общем виде процесс установки выглядит так. Сначала распаковывается архив с помощью графической программы или команд:

tar xzvf program-х.хх.tar.gz

tar xjvf program-х.хх.tar.bz2

Затем следует перейти в образовавшийся каталог. В нем можно найти файлы с именами INSTALL или README, в которых кратко описан процесс установки, сказано о зависимостях программы, даны описание программы и инструкции по сборке.

В общих случаях достаточно выполнить команду ./configure без дополнительных параметров. Сценарий самостоятельно найдет все программы и библиотеки и, если все в порядке, создаст makefile, необходимый для компиляции программы. Однако в случае, если сценарий что-то не найдет, последует сообщение об ошибке – внимательно прочитайте его и постарайтесь понять, в чем дело.

Внимание!

В дальнейшем при описании консольных команд будет использоваться знак доллара ($), что означает, что для выполнения этой команды достаточно прав обычного пользователя, или знак решетки (#), что требует прав root.

Скорее всего, в сообщении будет сказано, что отсутствует какой-то файл или библиотека либо имеющаяся версия устарела. В этом случае придется искать и устанавливать недостающее. Однозначного совета дать невозможно, здесь потребуется некоторый опыт. В случае если сообщение об ошибке непонятное, лучше поискать ответ на различных форумах – велика вероятность, что кто-то уже столкнулся с похожей проблемой и нашел ее удачное решение. Задавая вопрос, вставьте в него текст сообщения и укажите название и версию устанавливаемой программы и используемого дистрибутива. Для получения справки о дополнительных параметрах сценария следует использовать ключ –help.

Поделиться:
Популярные книги

Газлайтер. Том 22

Володин Григорий Григорьевич
22. История Телепата
Фантастика:
боевая фантастика
попаданцы
фэнтези
5.00
рейтинг книги
Газлайтер. Том 22

Призыватель нулевого ранга. Том 2

Дубов Дмитрий
2. Эпоха Гардара
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Призыватель нулевого ранга. Том 2

Позывной "Князь" 4

Котляров Лев
4. Князь Эгерман
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Позывной Князь 4

#Бояръ-Аниме. Газлайтер. Том 37

Володин Григорий Григорьевич
37. История Телепата
Фантастика:
фэнтези
аниме
боевая фантастика
5.00
рейтинг книги
#Бояръ-Аниме. Газлайтер. Том 37

Кодекс Охотника. Книга X

Винокуров Юрий
10. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
6.25
рейтинг книги
Кодекс Охотника. Книга X

Газлайтер. Том 26

Володин Григорий Григорьевич
26. История Телепата
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Газлайтер. Том 26

Кодекс Охотника. Книга XXV

Винокуров Юрий
25. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
6.25
рейтинг книги
Кодекс Охотника. Книга XXV

Гримуар темного лорда VIII

Грехов Тимофей
8. Гримуар темного лорда
Фантастика:
боевая фантастика
альтернативная история
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Гримуар темного лорда VIII

Газлайтер. Том 6

Володин Григорий
6. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 6

Неучтенный элемент. Том 3

NikL
3. Антимаг. Вне системы
Фантастика:
фэнтези
5.00
рейтинг книги
Неучтенный элемент. Том 3

Гром Раскатного. Том 2

Володин Григорий Григорьевич
2. Штормовой Предел
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Гром Раскатного. Том 2

Инженер Петра Великого

Гросов Виктор
1. Инженер Петра Великого
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Инженер Петра Великого

Вечный. Книга VII

Рокотов Алексей
7. Вечный
Фантастика:
боевая фантастика
рпг
попаданцы
5.00
рейтинг книги
Вечный. Книга VII

Личный аптекарь императора. Том 5

Карелин Сергей Витальевич
5. Личный аптекарь императора
Фантастика:
городское фэнтези
попаданцы
аниме
сказочная фантастика
фэнтези
7.50
рейтинг книги
Личный аптекарь императора. Том 5