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

Установка build-essential в Ubuntu

6 min read Linux Обновлено 21 Dec 2025
Установка build-essential на Ubuntu
Установка build-essential на Ubuntu

Две женщины смотрят в экран ноутбука

Зачем нужен build-essential

Пакет build-essential — это мета-пакет в Debian/Ubuntu, который устанавливает набор инструментов, необходимых для компиляции программ. Он удобен тем, что группирует ключевые зависимости в одном месте. Если вы планируете собирать ПО из исходников, развивать C/C++ проекты или собирать пакеты Debian, этот пакет значительно упрощает жизнь.

Кратко: build-essential содержит компиляторы, утилиты сборки и заголовочные файлы, которые необходимы для успешной компиляции программ.

Что входит в build-essential

На Ubuntu в состав build-essential обычно входят следующие пакеты:

  • dpkg-dev — утилиты для распаковки, сборки и подготовки DEB-исходников. Полезно для создания Debian-пакетов.
  • make — инструмент, который читает Makefile и запускает команды сборки. Без make часто не запустить автоматические сборки.
  • libc6-dev — заголовочные файлы и библиотеки для GNU C Library (libc). Нужен для компиляции C/C++ программ.
  • gcc / g++ — компиляторы для C и C++ соответственно. Без них исходники не превратятся в двоичные файлы.

Important: состав может немного отличаться между релизами Ubuntu. Метапакет гарантирует установку необходимых минимумов для большинства сборок.

Подготовка к установке

Прежде чем устанавливать пакеты, рекомендуется обновить индекс пакетов и установить доступные обновления. Это снизит вероятность конфликтов зависимостей.

sudo apt update && sudo apt upgrade -y

Скриншот терминала с обновлением пакетов

Примечание: выполнение apt upgrade обновит все пакеты системы. Если вы предпочитаете ручной контроль обновлений, опустите ключ -y и принимайте изменения вручную.

Установка build-essential

Установите мета-пакет одной командой:

sudo apt install build-essential

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

Во время установки apt спросит подтверждение на загрузку и распаковку пакетов. Ответьте “y” или “д” в зависимости от локали. В процессе вы увидите сообщения об распаковке и настройке пакетов.

Опционально: установите страницы руководства для разработчиков:

sudo apt install manpages-dev

Скриншот терминала установки manpages-dev

Как проверить установку компиляторов

После установки проверьте версии gcc и g++:

gcc --version
# пример вывода: gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0

g++ --version

Версию легко увидеть в строке вывода. Номера будут отличаться в зависимости от версии Ubuntu.

Компиляция и запуск тестовой программы на C

Создайте простой тестовый файл, чтобы убедиться, что компилятор работает.

nano test.c

Вставьте код и сохраните (Ctrl+X, затем Y и Enter):

#include 

int main() {
    printf("Hi, This is a test compiler program in C compiler!\n");
    return 0;
}

Код C в окне терминала

Соберите и выполните:

gcc test.c -o test
./test

Если вы видите строку с приветствием в терминале, значит gcc установлен и работает корректно.

Вывод работы компилятора C в терминале Ubuntu

Удаление build-essential

Если мета-пакет нужен больше не будет, его можно удалить:

sudo apt remove build-essential
sudo apt autoremove

Команда remove удалит сам метапакет. autoremove удалит неиспользуемые зависимости, которые были установлены вместе с ним.

Когда стоит или не стоит устанавливать build-essential

Когда устанавливать:

  • Вы собираете ПО из исходников.
  • Вы пакуете приложения в .deb.
  • Вы развиваете C/C++ проекты.

Когда можно обойтись без build-essential:

  • Вы используете контейнеры с предустановленным окружением (Docker-образы, CI), где сборка уже настроена.
  • Вы устанавливаете только бинарные пакеты из репозиториев и не собираете из исходников.
  • Вы используете языки с системой пакетов и компиляцией, не требующие системных компиляторов (например, чистый Python без расширений на C).

Альтернативные подходы

  • Установка отдельных пакетов: вместо метапакета можно установить только те компоненты, которые нужны (gcc, g++, make, libc6-dev, dpkg-dev). Это уменьшит объём установленных пакетов.
  • Использование Docker: соберите проект в контейнере с нужным образом. Это локализует зависимости и не меняет хост-систему.
  • WSL2 (Windows Subsystem for Linux): на Windows используйте WSL2 и установите build-essential внутри дистрибутива.
  • Сборка в CI: держите чистое окружение в пайплайне и не устанавливайте dev-инструменты на прод-серверы.

Мини‑методология: шаги от проверки до сборки

  1. Обновите индексы: sudo apt update.
  2. Проверьте свободное место и соответствие требований.
  3. Установите build-essential: sudo apt install build-essential.
  4. Установите manpages-dev, если нужны справки.
  5. Проверьте версии gcc/g++.
  6. Скомпилируйте минимальную программу.
  7. При необходимости удалите: sudo apt remove build-essential && sudo apt autoremove.

Чек-лист по ролям

Разработчик:

  • Установить build-essential локально.
  • Проверить версии gcc/g++ и make.
  • Прописать зависимости сборки в README или Makefile.
  • Добавить инструкции для сборки в CI.

Системный администратор:

  • Контролировать, кто устанавливает dev-пакеты на серверы.
  • Использовать apt policy и pinned репозитории для стабильности.
  • Логировать изменения пакетов.

Студент / обучающийся:

  • Установить build-essential для задач на C/C++.
  • Учиться с простых примеров и проверять man-страницы.

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

  • gcc и g++ возвращают команду –version без ошибок.
  • Простой C-файл компилируется и выводит ожидаемую строку.
  • make доступен и способен выполнить простые цели из Makefile.
  • Заголовочные файлы libc находятся в /usr/include или аналогичном пути.

Тест‑кейсы и проверки при установке

  1. Запустить sudo apt install build-essential и убедиться, что команда завершилась с кодом 0.
  2. Выполнить gcc –version и проверить, что версия отображается.
  3. Скомпилировать sample program и проверить вывод.
  4. Удалить пакет и убедиться, что критичные бинарники удалены только если не нужны другими пакетами.

Безопасность и рекомендации

  • Не устанавливайте ненужные dev‑пакеты на production-серверах. Это повышает поверхность атаки.
  • Если сборка требуется на сервере, держите её изолированной (контейнер, chroot).
  • Используйте проверенные репозитории и подписи пакетов.

Notes: build-essential сам по себе не несёт рисков, но набор пакетных инструментов расширяет функциональность системы — стоит контролировать доступ к установке пакетов.

Совместимость и миграция

  • Пакет доступен во всех поддерживаемых релизах Ubuntu и Debian.
  • При переходе на более новую версию Ubuntu проверьте версии gcc и возможные несовместимости ABI, если вы компилируете бинарные расширения для других языков.

Короткая шпаргалка (cheat sheet)

  • Обновить систему: sudo apt update && sudo apt upgrade -y
  • Установить: sudo apt install build-essential
  • Проверить GCC: gcc –version
  • Скомпилировать: gcc test.c -o test && ./test
  • Удалить: sudo apt remove build-essential && sudo apt autoremove

1‑строчный глоссарий

  • Metapackage — пакет, который не содержит бинарников, а указывает на другие пакеты для установки.
  • dpkg-dev — инструменты для работы с исходными Debian-пакетами.
  • make — система автоматической сборки, которая читает Makefile.

Резюме

Установка build-essential — простой и рекомендуемый шаг для разработчиков на Ubuntu. Он обеспечивает базовый набор инструментов для компиляции и пакетирования программ. Варианты установки включают отдельную установку компонентов, использование контейнеров и CI для изоляции. Для прод-серверов стоит избегать установки ненужных dev-пакетов и предпочесть контейнеры или отдельные билд-серверы.

Important: всегда проверяйте, нужны ли вам все компоненты, и держите процесс сборки изолированным на production-системах.


Краткое руководство по содержимому: данная статья объясняет состав build-essential, показывает пошаговую установку и проверку, описывает альтернативы и даёт практические чек-листы для разных ролей.

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

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

Кибербезопасность для интернет‑магазина — руководство
Кибербезопасность

Кибербезопасность для интернет‑магазина — руководство

Как отключить и удалить историю «Ok Google»
Конфиденциальность

Как отключить и удалить историю «Ok Google»

Восстановить меню двойной загрузки в Windows
Windows

Восстановить меню двойной загрузки в Windows

Перемещение библиотеки Apple Photos
Инструкции

Перемещение библиотеки Apple Photos

Скачать, удалить и приостановить историю поиска Google
Конфиденциальность

Скачать, удалить и приостановить историю поиска Google

Создать сайт с телефона — GoDaddy, WordPress, Weebly
Создание сайтов

Создать сайт с телефона — GoDaddy, WordPress, Weebly