Пятница, 01 Ноябрь 2013 01:58

Сборка программы из исходников(.tar.gz)

Автор
Оцените материал
(1 Голосовать)

Очень часто самому приходилось собирать из исходников (tar.gz) что-то и постоянно не мог понять как это делать. Инструкции по умолчанию в каждом исходнике должны быть, но не всегда получается правильно это сделать. Тут я думаю предельно ясно изложены все пункты.

Шаг 1: берём исходники

Необходимо скачать и распаковать архив с исходным кодом программы. Например, можно скачать программу hello-2.1.1. Обычно исходники следует брать с сайта разработчиков программы.

Распаковать архив можно так:
$ tar zxvf hello-2.1.1.tar.gz

 

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

Перейдите в каталог с исходным кодом:
$ cd hello-2.1.1

Шаг 2: configure

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

В большинстве случае для подготовки исходников к сборке потребуется выполнить только одну команду:
hello-2.1.1$ ./configure

Она проверит наличие всех необходимых условий (библиотек и других программ) в Вашей системе, и приготовит исходный код к их использованию. Обратите внимание на символы "./" в начале команды. Они указывают, что необходимо выполнить команду configure из текущего каталога, то есть команду configure поставляемую вместе с исходным текстом программы, которую мы собираем.

 

 

На этом же этапе можно указать и куда именно надо ставить программу. Хотя в большинстве случаев рекомендуется ставить "самосборные" программы в каталог /usr/local, иногда это невозможно. Так, если у пользователя нет прав администратора, например на общественном компьютере, то установить программу можно только в свой домашний каталог. Чтобы установить программу в домашний каталог нужно указать дополнительный параметр команде configure:
hello-2.1.1$ ./configure --prefix=$HOME

 

Внимательно читайте что пишется на экране при подготовке исходников. Если всё нормально, то закончится она должна чем-нибудь вроде
config.status: creating Makefile
config.status: creating contrib/Makefile
config.status: creating doc/Makefile
config.status: creating intl/Makefile
...

 

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

 

Шаг 3: make

Сам make нужно скачать, если он не скачан. Скачать можно командой:

apt-get install make

Если предыдущая стадия закончилась нормально, то теперь можно идти дальше. То есть запускать процесс сборки программы. Обычно он происходит автоматически и управляется командой make:
hello-2.1.1$ make

Для больших программ этот процесс может занимать довольно много времени. Однако наша программа-пример hello должна собраться быстро.

 

 

Если сборка закончилась сообщением вроде этого:
make: *** [all] Ошибка 2

то значит, что-то пошло не так, и сборка не получилась. Однако чаще всего сборка заканчивается без ошибок.

 

Шаг 4: make install

Собственно всё. Собранную программу можно устанавливать в систему. Делается это так:
hello-2.1.1$ make install

Если на шаге подготовки исходников Вы выбрали вариант установки в домашний каталог (как я), то не забудьте добавить подкаталог ~/bin в переменную PATH:
$ export PATH=$HOME/bin:$PATH

Можете запускать собранную программу:
$ hello

Она пишет на экран "Здравствуй, мир!". Всё ОК.


Примечание: если нужно будет удалить эту программу, или любую другую установленную, то можно использовать команду:

hello-2.1.1$ make uninstall

или

apt-get remove hello-2.1.1

 

Прочитано 3117 раз Последнее изменение Пятница, 04 Июль 2014 02:55
Валентин Олегович

Администратор сайта.

linuxmd.net
Другие материалы в этой категории:« Секреты GNU/Linux Создаем загрузочную флэшку с Linux »

Добавить комментарий

1. Ругательства запрещены
2. Реклама запрещена

Защитный код
Обновить

О нас | Рассылка | Правила сайта | Правила форума | Поиск

При копировании какого-либо контента с сайта, ссылка на источник - ОБЯЗАТЕЛЬНА! В случае несоблюдения данного пункта будет отправлена жалоба на хостинг нарушителя и сайт будет закрыт (или оштрафован) по усмотрению оператора. Верьте в силу копирайта. Основатель портала: Валентин Щербаков 2013 - 2016

Программное обеспечение сайта распространяется по лицензии GNU General Public License.