Компиляция и установка программ из исходников
Не редко необходимые пакеты можно найти только в виде исходных текстов, в данной статье описывается метод установки пакета из исходных текстов.
Распаковка
Программы обычно распространяются в упакованных архивах, это файлы с расширениями
.tar.gz (иногда .tgz) .tar.bz2
Нужно понимать отличие между архиватором и упаковщиком.
Для архивации директорий и файлов используется программа tar; результатом её работы является файл с расширением .tar. Грубо говоря, это копия файловой системы — директорий и файлов с их атрибутами и правами доступа, помещённая в один файл.
Данный файл по размеру будет чуть больше, чем суммарный размер файлов, которые были архивированы. Поэтому (а может и по другой причине) используют упаковщики — программы, которые позволяют уменьшить размер файла без потери данных.
Программа tar умеет распаковывать, поэтому не нужно вызывать gunzip, а можно просто указать программе tar, что файл нужно cначала распаковать. Например, команда
tar -xvf some_app_name>.tar.gz
сразу распакует и разархивирует. Отличие файлов с расширениями
.tar.gz
.tar.bz2
лишь в том, что использовались разные упаковщики, программа tar определяет метод сжатия автоматически и дополнительных опций в данном случае не требуется.
После распаковки необходимо перейти в полученный каталог, все описываемые ниже команды выполняются в каталоге с исходными текстами пакета.
cd имя_пакета>*
Сборка пакета
Для сборки программ в GNU/Linux используется (в основном) программа make, которая запускает инструкции из Makefile, но поскольку дистрибутивов GNU/Linux много, и они все разные, то для того чтобы собрать программу, нужно для каждого дистрибутива отдельно прописывать пути,где какие лежат библиотеки и заголовочные файлы. Программисты не могут изучать каждый дистрибутив и для каждого отдельно создавать Makefile. Поэтому придумали конфигураторы, которые «изучают» систему, и в соответствии с полученными знаниями создают Makefile. Но на конфигураторе они не остановились и придумали конфигураторы конфигураторов …на этом они остановились
Для сборки нам нужны компиляторы: они прописаны в зависимостях пакета build-essential, так что достаточно установить его со всеми зависимостями. Ещё нужны autoconf и automake.
Итак, чтобы собрать что-то из исходников, нужно сначала собрать конфигуратор; как собрать конфигуратор, описано в файле configure.in. Для сборки конфигуратора необходимо выполнить
./bootstrap
./autogen.sh
Если таких скриптов в архиве не оказалось, то можно выполнить последовательно следующие команды:
aclocal autoheader automake --gnu --add-missing --copy --foreign autoconf -f -Wall
Все эти команды используют файл configure.in. После выполнения этих команд создастся файл configure. После этого необходимо запустить конфигуратор для проверки наличия всех зависимостей, а также установки дополнительных опций сборки (если возможно) и просмотра результата установки (опционально- может не быть)
./configure
Конфигуратор построит Makefile основываясь на полученных знаниях и файле makefile.am. Можно передать конфигуратору опции, предусмотренные в исходниках программы, которые позволяют включать/отключать те или иные возможности программы, обычно узнать о них можно командой
./configure --help
Также есть набор стандартных опций, вроде
--prefix=
, которая указывает, какой каталог использовать для установки. Для Ubuntu обычно
--prefix=/usr
--prefix=/usr/local
БЕЗ слеша в конце! Теперь можно запустить процесс сборки самой программы командой
make
Для сборки достаточно привелегий обычного пользователя. Окончанием сборки можно считать момент, когда команды в консоли перестанут «беспорядочно» выполняться и не будет слова error. Теперь всё скомпилировано и готово для установки.
Установка
Усилия потраченные на Правильную установку в последствии с лихвой окупятся в случае удаления или обновления устанавливаемого программного обеспечения.
Правильная установка(Вариант №1)
Установка при помощи утилиты checkinstall. Для установки выполните
sudo apt-get install checkinstall
Минус данного способа: checkinstall понимает не все исходники, поскольку автор программы может написать особые скрипты по установке и checkinstall их не поймёт.
Для создания и установки deb-пакета необходимо выполнить
sudo checkinstall
Правильная установка(Вариант №2)
Быстрое создание deb-пакета «вручную».
Основное отличие от предыдущего способа заключается в том, что в данном случае вы создаете пакет вручную и отслеживаете все вносимые изменения. Так же этот способ подойдет вам, если исходники не поддерживают сборку пакета с checkinstall.
Производим установку во временную директорию, где получаем весь набор устанавливаемых файлов:
fakeroot make install DESTDIR=`pwd`/tempinstall
Создадим в «корне пакета» директорию DEBIAN и сложим в DEBIAN/conffiles список всех файлов, которые должны попасть в /etc:
сd tempinstall mkdir DEBIAN find etc | sed "s/^/\//" > DEBIAN/conffiles
После чего создаём файл DEBIAN/control следующего содержания:
Package: имя_пакета Version: 1.2.3 Architecture: amd64/i386/armel/all Maintainer: Можете вписать своё имя, можете дребедень, но если оставить пустым, то dpkg будет ругаться Depends: Тут можно вписать список пакетов через запятую. Priority: optional Description: Тоже надо что-нибудь вписать, чтобы не кидало предупреждения
При необходимости там же можно создать скрипты preinst, postinst, prerm и postrm.
Создаем deb-пакет, для чего выполняем:
dpkg -b tempinstall
Получаем на выходе tempinstall.deb, который и устанавливаем
sudo dpkg -i tempinstall.deb
Как извлечь и установить файлы tar.gz в Ubuntu
Как установить файл tar.gz в Ubuntu. Как установить загруженный tar.gz в Ubuntu. Команда для установки файла tar.gz в Linux — как извлечь и установить файлы tar.gz в Ubuntu.
В вычислениях tar — это утилита для компьютерного программного обеспечения для сбора многих файлов в один файл архива. Он часто упоминается как tarball и используется для целей распространения или резервного копирования. Название tar получено из (t) ape (ar) chive.
Файлы архива tar обычно имеют суффикс файла .tar, например package.tar или package.tar.bz2 или package.tar.bz или package.tar.xz. Термин tarball также используется для ссылки на файл tar.
Установите файл .tar.gz или (.tar.bz2).
Установка файла .tar.gz или (.tar.bz2) очень проста. Пользователи Ubuntu могут извлечь файл .tar.gz и скомпилировать программу из своего источника. Выполните действия, приведенные ниже, чтобы извлечь и установить файлы tar.gz в Ubuntu.
Целесообразно перейти к загруженной папке .tar.bz и открыть и прочитать файл README. Он обычно имеет инструкции по установке. Если нет, вы можете установить файл .tar.gz или (.tar.bz2) через Terminal.
- Загрузите файл .tar.gz или (.tar.bz2)
- Открытый терминал
- Извлеките файл .tar.gz или (.tar.bz2) со следующими командами
tar xvzf PACKAGENAME.tar.gz
tar xvjf PACKAGENAME.tar.bz2 - Перейдите в извлеченную папку с помощью команды cd
cd PACKAGENAME - Теперь запустите следующую команду для установки tarball
. / Настроить
сделать
sudo make install
Пример
$ sudo apt-get update
$ wget https://dl.winehq.org/wine/source/1.9/wine-1.9.19.tar.bz2
$ sudo tar xzvf wine-1.9.19.tar.bz2
$ cd wine-1.9.19
$ ./configure
$ make
$ sudo make install
$ sudo reboot
Похожие посты:
- Ubuntu 17.04 «Zesty Zapus» Все варианты Ссылки для скачивания
- Список репозиториев PPA для Ubuntu 17.04 Zesty Zapus
- Вино 5.0 выпущено! Вот как это установить
- Как создать резервную копию профиля Thunderbird в Linux
- Как установить Wine 2.0 Stable в Ubuntu 16.04, 14.04, 16.10
- Что нужно сделать после установки Ubuntu 18.04
- Лучшее бесплатное программное обеспечение для извлечения файлов CAB для Windows 11/10
- Amazon Alexa пасхальные яйца: более 180 забавных вещей, чтобы спросить Алекса
- Версия для разработки Wine 2.22 — Загрузите и установите Wine на Ubuntu
- Как установить Wine 5.0 Stable в Ubuntu Linux
Форум русскоязычного сообщества Ubuntu
Страница сгенерирована за 0.045 секунд. Запросов: 23.
- Сайт
- Об Ubuntu
- Скачать Ubuntu
- Семейство Ubuntu
- Новости
- Форум
- Помощь
- Правила
- Документация
- Пользовательская документация
- Официальная документация
- Семейство Ubuntu
- Материалы для загрузки
- Совместимость с оборудованием
- RSS лента
- Сообщество
- Наши проекты
- Местные сообщества
- Перевод Ubuntu
- Тестирование
- RSS лента
© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.
Установка файлов формата TAR.GZ в Ubuntu
TAR.GZ — стандартный тип архива, использующийся в операционной системе Ubuntu. В нем обычно хранятся программы, предназначенные для установки, или различные репозитории. Установить софт этого расширения так просто не получится, его необходимо распаковать и собрать. Сегодня мы бы хотели в деталях обсудить именно эту тему, показав все команды и пошагово расписав каждое необходимое действие.
Устанавливаем архив TAR.GZ в Ubuntu
В самой процедуре распаковки и подготовки софта нет ничего сложного, все выполняется через стандартный «Терминал» с предварительной загрузкой дополнительных компонентов. Главное лишь подобрать рабочий архив, чтобы после разархивации не возникло проблем с инсталляцией. Однако перед началом инструкций мы хотим отметить, что следует внимательно изучить официальный сайт разработчика программы на наличие DEB или RPM-пакетов либо же официальных репозиториев.
Установку таких данных можно произвести гораздо проще. Детальнее о разборе инсталляции RPM-пакетов читайте в другой нашей статье, мы же переходим к первому шагу.
Шаг 1: Инсталляция дополнительных инструментов
Для осуществления поставленной задачи вам потребуется всего одна утилита, которую необходимо загрузить еще до начала взаимодействия с архивом. Конечно, в Ubuntu уже есть встроенный компилятор, но наличие утилиты для создания и сборки пакетов позволит переделать архив в отдельный объект, поддерживаемый файловым менеджером. Благодаря этому вы сможете передавать DEB-пакет другим пользователям или удалять программу из компьютера полностью, не оставляя лишних файлов.
- Откройте меню и запустите «Терминал».
- Введите команду sudo apt-get install checkinstall build-essential autoconf automake для добавления нужных компонентов.
- Для подтверждения добавления потребуется ввести пароль от главной учетной записи.
- Выберите вариант Д, чтобы запустить операцию добавления файлов.
- Ожидайте завершения процесса, после чего появится строка ввода.
Процесс инсталляции дополнительной утилиты всегда проходит успешно, поэтому с этим шагом не должно возникнуть никаких проблем. Передвигаемся к дальнейшим действиям.
Шаг 2: Распаковка архива с программой
Теперь вам требуется подключить накопитель с сохраненным там архивом или загрузить объект в одну из папок на компьютере. После этого приступайте к выполнению следующей инструкции:
- Откройте файловый менеджер и перейдите в папку хранения архива.
- Нажмите по нему правой кнопкой мыши и выберите пункт «Свойства».
- Узнайте путь к TAR.GZ — он пригодится для осуществления операций в консоли.
- Запустите «Терминал» и перейдите в эту папку хранения архива с помощью команды cd /home/user/folder , где user — имя пользователя, а folder — название директории.
- Извлеките файлы из директории, вписав tar -xvf falkon.tar.gz , где falkon.tar.gz — название архива. Обязательно нужно ввести не только имя, но и .tar.gz .
- Вы будете ознакомлены со списком всех данных, которые удалось извлечь. Они будут сохранены в отдельной новой папке, находящейся по этому же пути.
Осталось только собрать все полученные файлы в один DEB-пакет для дальнейшей обычной установки программного обеспечения на компьютер.
Шаг 3: Компилирование DEB-пакета
Во втором шаге вы вытащили файлы из архива и поместили их в обычную директорию, однако это еще не обеспечит нормальное функционирование программы. Его следует собрать, придав логический вид и сделав нужный установщик. Для этого используются стандартные команды в «Терминале».
- После процедуры разархивации не закрывайте консоль и переходите сразу в созданную папку через команду cd falkon , где falkon — название необходимой директории.
- Обычно в сборке имеются уже скрипты по осуществлению компиляции, поэтому советуем сначала проверить команду ./bootstrap , а в случае ее неработоспособности задействовать ./autogen.sh .
- Если же обе команды оказались нерабочими, нужно самому добавить необходимый скрипт. Последовательно введите в консоль команды: aclocal
autoheader
automake —gnu —add-missing —copy —foreign
autoconf -f -WallВо время добавления новых пакетов может оказаться, что в системе не хватает определенных библиотек. Вы увидите соответствующее уведомление в «Терминале». Установить недостающую библиотеку можно командой sudo apt install namelib , где namelib — название требуемого компонента. Сразу же после этого запустите команду ./configure , которая проверит все необходимые файлы архива. В случае появления ошибок недостающие файлы придется найти в любом удобном для вас источнике, скачать и установить точно так же, как это было при использовании предыдущей команды.
- По завершении предыдущего шага приступайте к компиляции, вписав команду make . Время сборки зависит от объема информации в папке, поэтому не закрывайте консоль и ждите появления уведомления об удачном компилировании.
- В последнюю очередь впишите checkinstall .
Шаг 4: Установка готового пакета
Как уже было сказано нами ранее, применяемый способ используется для создания из архива DEB-пакета для дальнейшей установки программы любыми удобными способами. Сам пакет вы найдете в той же директории, где хранится TAR.GZ, а с возможными методами его инсталляции ознакомьтесь в отдельной нашей статье по ссылке ниже.
При попытке установки рассмотренных архивов важно также учитывать, что некоторые из них были собраны специфическими методами. Если приведенная выше процедура не работает, загляните в саму папку распакованного TAR.GZ и отыщите там файл Readme или Install, чтобы ознакомиться с описаниями по установке.