Гид по технологиям

Как установить программу из .tar.gz или .tar.bz2 в Ubuntu

6 min read Linux Обновлено 24 Dec 2025
Установка из .tar.gz/.tar.bz2 в Ubuntu
Установка из .tar.gz/.tar.bz2 в Ubuntu

Важно: перед началом всегда читайте файлы README или INSTALL в распакованной папке — иногда разработчик описал особую процедуру установки.

Основная идея

В Linux часто распространён формат tarball (.tar.gz или .tar.bz2) с исходным кодом. Чтобы программа работала, исходники нужно сконфигурировать, собрать и установить. Этот процесс может вызвать сложности из‑за зависимостей и специфичных опций сборки. Метод ниже превращает ручную сборку в управляемую установку через пакетный менеджер, что упрощает обновления и удаление.

Ключевые этапы (вкратце):

  • Подготовить систему (установить инструменты сборки и checkinstall).
  • Переместить архив в рабочую директорию (/usr/local/src) и распаковать.
  • Запустить ./configure, исправить недостающие зависимости при помощи apt-file.
  • Выполнить make и sudo checkinstall для создания .deb и установки через менеджер.

Что такое tarball — определение в одну строку

Tarball — это архив формата TAR, часто дополнительно сжатый gzip (.tar.gz) или bzip2 (.tar.bz2), содержащий исходный код и инструкции сборки приложения.

Подготовка системы

Установите необходимые инструменты: build-essential (компиляторы и утилиты), checkinstall (создание пакета .deb), а также системы контроля версий по желанию:

sudo apt-get install build-essential checkinstall

Фото терминала с установкой build-essential и checkinstall

Для удобного обновления исходников установите субверсии/гит/mercurial (можно один из них):

sudo apt-get install subversion git-core mercurial

Создайте общую директорию для сборки (рекомендуется /usr/local/src) и сделайте её доступной текущему пользователю:

sudo chown $USER /usr/local/src
sudo chmod u+rwx /usr/local/src

Установите apt-file — инструмент, который поможет найти пакет, содержащий нужные файлы-заголовки или библиотеки:

sudo apt-get install apt-file

Скриншот команды apt-file update в терминале

Возможно, потребуется обновить индекс apt-file:

sudo apt-file update

Примечание: apt-file обновляется нечасто вручную; после обновления система будет готова к поиску зависимостей при сборке.

Извлечение архива и проверка инструкций

Переместите скачанный файл .tar.gz или .tar.bz2 в рабочую папку, например /usr/local/src (можно через проводник). Откройте терминал и перейдите в неё:

cd /usr/local/src

Распакуйте архив:

Для .tar.gz:

tar -xzvf .tar.gz

Для .tar.bz2:

tar -xjvf .tar.bz2

Список распакованных файлов в терминале

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

Перейдите в распакованный каталог:

cd /usr/local/src/

Замените на имя каталога, созданного архивом.

Окно файлового менеджера с распакованной папкой

Конфигурация исходников

Запустите конфигурационный скрипт:

./configure

Если в корне проекта нет файла configure, проверьте README/INSTALL — иногда используются другие системы сборки (CMake, Meson, Python setup.py и т. п.). В этом случае переходите к разделу «Альтернативные системы сборки» ниже.

Если ./configure сообщает об ошибках, часто причина — отсутствующие dev‑пакеты (заголовочные файлы или библиотеки). Пример ошибки:

configure: error: Library requirements ... not met

Чтобы найти, какой пакет содержит нужный файл (например, libfoo.h), используйте apt-file:

apt-file search .

apt-file выдаст пакет, в котором присутствует файл. Устанавливайте найденный пакет:

sudo apt-get install 

Если ./configure выдаёт ошибку, сообщающую о недостающем autoconf или других утилитах, установите их:

sudo apt-get install autoconf

и запустите ./configure снова.

Когда вы увидите сообщение вида:

config.status: creating Makefile

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

Результат успешного configure в терминале

Сборка и установка при помощи checkinstall

Сборка выполняется командой:

make

Процесс компиляции может занять от нескольких секунд до десятков минут в зависимости от проекта и мощности машины. После успешной сборки создайте Debian-пакет и установите его через checkinstall:

sudo checkinstall

Следуйте подсказкам у программы: введите краткое описание пакета, версию (можно оставить автоматически предложенную) и подтвердите создание пакета. Checkinstall упакует установленные файлы в .deb и установит его через dpkg, так что вы потом сможете удалить пакет стандартными средствами (apt или dpkg).

Процесс создания пакета и экран успешной установки

По умолчанию исполняемые файлы часто попадают в /usr/local/bin:

/usr/local/bin

Проверьте, что программа запускается корректно из командной строки.

Запуск установленной программы из /usr/local/bin

Альтернативные системы сборки (CMake, Meson, Python и др.)

  • CMake: замените последовательность на mkdir build && cd build && cmake .. && make. Затем sudo checkinstall для упаковки.
  • Meson / Ninja: meson setup build && ninja -C build && sudo checkinstall (в каталоге build).
  • Python (setup.py): python3 setup.py build && sudo checkinstall –install=yes –pkgname= –pkgversion= python3 setup.py install

Всегда читайте интенсивно README/INSTALL — там часто указаны рекомендуемые флаги, например –prefix для установки в определённый путь.

Когда этот метод не подходит

  • Если проект поставляется в бинарном .deb/.rpm/flatpak/snap — используйте соответствующий пакет.
  • Если проект поддерживает контейнеризацию (Docker/Podman) и вам нужна изоляция — рассмотрите контейнеры.
  • Если вы хотите автоподдержку обновлений через репозиторий — лучше создавать PPA или ждать официальных пакетов.

Типичные ошибки и как их исправить

  1. Ошибка: «configure: error: cannot find X11/Xlib.h» — значит, нужен пакет X11 dev, например libx11-dev. Найдите пакет через apt-file и установите.
  2. Ошибка: «g++: command not found» — установите build-essential.
  3. Ошибка: отсутствует autoconf/automake — установите autoconf и/или automake.
  4. Ошибка сборки из-за конфликтующих библиотек — проверьте LD_LIBRARY_PATH и используемые версии библиотек; рассмотрите установку в изолированную префикс‑директорию (./configure –prefix=/opt/myapp).

Практические советы и эвристики

  • Всегда используйте checkinstall вместо sudo make install — так вы получите пакет и простой способ удаления.
  • При тестировании используйте –prefix=/opt/ или /usr/local чтобы избежать перезаписи системных файлов.
  • Для многопользовательских серверов лучше ставить сборки в /opt и добавлять символьные ссылки в /usr/local/bin.
  • Если компиляция занимает очень долго, попробуйте make -j$(nproc) для параллельной сборки (используйте разумное число потоков).

Мини‑методология (быстрый чеклист перед сборкой)

  • Прочитать README/INSTALL в распакованной папке.
  • Установить build-essential и checkinstall.
  • Обновить apt-file и найти dev‑пакеты при необходимости.
  • Выполнить ./configure, исправить зависимости.
  • make, затем sudo checkinstall.
  • Проверить запуск и пути установки.

Роль‑ориентированные контрольные списки

Для разработчика:

  • Убедиться, что исходники чисты: git clean, ./configure проходит.
  • Подготовить опции –enable/–disable для тестирования.

Для системного администратора:

  • Устанавливать в /opt или /usr/local для контроля.
  • Создать файл описания пакета для внутреннего репозитория при необходимости.

Для продвинутого пользователя:

  • Использовать chroot или контейнер для тестовой сборки, если пакет потенциально нестабилен.

Критерии приёмки

  • Программа успешно запускается из командной строки.
  • Не наблюдается утечек или конфликтов с системными библиотеками.
  • Пакет можно удалить командой apt remove или dpkg -r .

Небольшая галерея крайних случаев

  • Проект использует устаревшие зависимости, несовместимые с текущей системой — придётся либо собрать старые зависимости, либо использовать контейнер с более старым дистрибутивом.
  • Проект имеет проприетарные компоненты — лицензии могут ограничивать упаковку и распространение.

Краткий глоссарий (в одну строку на термин)

  • tarball — архив с исходниками (.tar, .tar.gz, .tar.bz2).
  • configure — конфигурационный скрипт, проверяющий окружение и опции сборки.
  • make — утилита для сборки из исходников по Makefile.
  • checkinstall — создаёт пакет (.deb) и устанавливает его через систему пакетов.
  • apt-file — ищет файлы в индексах пакетов APT.

Примеры команд — шпаргалка

sudo apt-get install build-essential checkinstall apt-file
sudo apt-file update
sudo chown $USER /usr/local/src && sudo chmod u+rwx /usr/local/src
cd /usr/local/src
tar -xzvf package-1.2.3.tar.gz   # для .tar.gz
cd package-1.2.3
./configure
make -j$(nproc)
sudo checkinstall

Decision flow (Mermaid) — какой путь сборки выбрать

flowchart TD
  A[Есть исходники в архиве?] -->|Да| B{Есть файл configure?}
  A -->|Нет| Z[Использовать пакет/репозиторий/контейнер]
  B -->|Да| C[./configure → make → checkinstall]
  B -->|Нет| D{Использует CMake / Meson / Python?}
  D -->|CMake| E[cmake .. → make → checkinstall]
  D -->|Meson| F[meson setup → ninja → checkinstall]
  D -->|Python| G[python3 setup.py install → checkinstall]
  D -->|Нет| H[Прочитать README/INSTALL — искать инструкции]

Короткая сводка

  • Метод основан на том, чтобы сначала собрать программу, а затем упаковать её через checkinstall — это экономит время и упрощает управление установленным ПО.
  • Всегда читайте документацию проекта и используйте apt-file для поиска недостающих dev‑пакетов.
  • Если проект сложный или критичен, рассмотрите сборку в контейнере или создание собственного репозитория.

Краткие советы: используйте параллельную сборку (make -j), устанавливайте в /opt при необходимости и держите пакет в системе управления версиями, если планируете обновления.

Если у вас есть конкретный tarball и вы хотите, чтобы я помог пошагово с ним — пришлите имя архива и содержимое README/INSTALL (или вывод ./configure), и я подскажу следующую команду или пакет зависимости.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

RDP: полный гид по настройке и безопасности
Инфраструктура

RDP: полный гид по настройке и безопасности

Android как клавиатура и трекпад для Windows
Гайды

Android как клавиатура и трекпад для Windows

Советы и приёмы для работы с PDF
Документы

Советы и приёмы для работы с PDF

Calibration в Lightroom Classic: как и когда использовать
Фото

Calibration в Lightroom Classic: как и когда использовать

Отключить Siri Suggestions на iPhone
iOS

Отключить Siri Suggestions на iPhone

Рисование таблиц в Microsoft Word — руководство
Office

Рисование таблиц в Microsoft Word — руководство