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

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

ПРИМЕЧАНИ Е

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

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

версия  программ, поэтому приходится ждать, когда у сборщика дойдут до него руки.

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

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

ВНИМАНИЕ!

Чтобы самостоятельно компилировать программы, потребуется компилятор GCC, GNU Make и прочие утилиты. В некоторых дистрибутивах они по умолчанию не устанавливаются. Чтобы установить их в  Linux Mint, а также в  Ubuntu и других производных дистрибутивах, необходимо ввести команду sudo apt-get install buildessential.

Как правило, исходные файлы заархивированы  в так называемый тарболл. Архив, в зависимости  от программы, которая использовалась при  его  создании,  имеет суффикс .tar.g z или   .tar.bz 2 и имя  вроде program-x.хх , где program название программы, а х.х х — версия. В общем виде процесс установки выглядит так. Сначала распаковывается архив с помощью графической программы или команд:

ta r    xzv f    program-x.хх.tar.g z ta r    xjv f    program-x.xx.tar.bz 2

Затем переходим в  образовавшийся каталог. Как правило,   в нем  можно найти файлы с именами INSTALL или README, в которых кратко описан процесс установки, сказано о зависимостях программы, даны описание программы и  инструкции по сборке. В общих случаях достаточно выполнить команду ./configur e без дополнительных параметров. Скрипт самостоятельно найдет все программы и библиотеки. И, если все будет в порядке, создаст makefile, необходимый для компиляции программы. Но в  том случае, когда скрипт не найдет,  последует сообщение об ошибке. Прочитайте его внимательно и постарайтесь понять, в чем дело.

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

$  ./configur e   -hel p

Наиболее часто используемым параметром является -prefix , с  помощью которого указывается каталог для установки программ, отличный от используемого по умолчанию (обычно /usr/local/). В  некоторых случаях такого скрипта нет, а есть уже готовый makefile. Тогда сразу же переходим ко второму этапу — вводим команду make, которая и  скомпилирует программу. Если работа make завершилась без ошибок, устанавливаем программу (при этом происходит установка  не только двоичных файлов, но и документации).

Для выполнения последнего шага понадобятся права  суперпользователя  (root), которые можно получить,  введя команду  sudo:

$ sudo  make   instal l

Чтобы удалить установленную  таким образом программу, следует  использовать команду make uninstall ,  хотя часто разработчики не используют в скриптах эту возможность.

Источник: Яремчук С. А.  Linux Mint на 100 %. — СПб.: Питер, 2011. — 240 е.: ил. — (Серия «На 100 %»).

Похожие посты:

Вы можете оставить комментарий, или ссылку на Ваш сайт.

Оставить комментарий