Ошибка make: command not found — причины и способы исправления
Коротко о сути
make — это утилита для автоматической сборки программ по правилам, указанным в Makefile. Если система отвечает “make: command not found”, это значит, что исполняемый файл make отсутствует в PATH или не установлен. Одной строкой: проверьте установку, затем проверьте PATH.
Important: под “make” обычно подразумевается GNU make. В редких случаях системы могут располагать несовместимые аналоги.
Почему возникает ошибка make: command not found?
Основные причины:
- Make не установлен. На многих ОС (особенно минимальных образах) make по умолчанию отсутствует.
- Исполняемый файл установлен, но его папка не включена в переменную PATH.
- Опечатка или неверный регистр (команда чувствительна к регистру — используйте “make”).
- Проблемы совместимости: минимальные контейнеры или специализированные системы могут не поддерживать make.
- Повреждён или удалён исполняемый файл из-за некорректной установки или сбоев файловой системы.
Быстрая методика исправления (мини-методология)
- Проверка синтаксиса: убедитесь, что вводите точно
make. - Проверка наличия: выполните команды диагностики (см. ниже).
- Установка: установите пакет GNU make для вашей ОС или среды.
- PATH: убедитесь, что путь к make присутствует в PATH.
- Повторная проверка и тест:
make --versionи запустите простую цель в Makefile.
Диагностика — команды для проверки
- Linux / macOS / WSL:
which make
type -a make
whereis make
make --version- Windows (CMD/PowerShell):
where make
Get-Command make
make --versionЕсли команды возвращают ничего или сообщение об ошибке, значит make не найден или не установлен.
Установка make по платформам
Ниже — практические команды и рекомендации для самых распространённых сред.
Linux (Debian/Ubuntu)
sudo apt update
sudo apt install build-essential # включает make, gcc и другие инструменты
# или отдельно
sudo apt install makeПроверка:
make --versionLinux (Fedora/RHEL/CentOS)
sudo dnf install make # Fedora
sudo yum install make # старые RHEL/CentOSLinux (Arch)
sudo pacman -Syu makemacOS
На macOS make обычно доступен вместе с Xcode Command Line Tools:
xcode-select --installПосле установки проверьте make --version.
Альтернатива: если вы используете Homebrew, можно установить GNU make как gmake, но стандартный make обычно покрывается инструментариями Xcode.
Windows — несколько подходов
Windows не содержит GNU make по умолчанию. Возможные варианты:
Windows Subsystem for Linux (WSL)
- Установите WSL и затем в Linux-дистрибутиве используйте команды для Linux (apt/dnf/pacman).
Chocolatey (пакетный менеджер для Windows)
В PowerShell с правами администратора:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
choco install make -yMSYS2 / MinGW / Cygwin
- Установите MSYS2 или Cygwin и через их пакетные менеджеры установите
make(в MSYS2 пакет называетсяmakeили входит вbase-devel).
- Установите MSYS2 или Cygwin и через их пакетные менеджеры установите
Scoop (ещё один менеджер пакетов для Windows)
# установить scoop, затем
scoop install makeПосле установки обязательно проверить make --version и, при необходимости, добавить путь к бинарю в системную PATH (см. ниже).



Как добавить make в PATH на Windows
- Нажмите Windows + R, введите
systempropertiesadvancedи нажмите Enter, чтобы открыть вкладку “Дополнительно”. - Нажмите кнопку “Переменные среды”.
- В разделе «Системные переменные» найдите переменную PATH и нажмите “Изменить”.
- Добавьте путь к каталогу, где установлен make (например,
C:\ProgramData\chocolatey\binдля Chocolatey). - Откройте новое окно PowerShell/Командной строки и проверьте
make --version.


Альтернативные подходы и когда make не нужен
- Если вы используете современные сборщики (CMake, Meson, Bazel, Gradle, npm scripts), они могут генерировать свои сборочные процессы без вызова make.
- В проектах на языке высокого уровня (например, Python) часто используется pip/poetry/tox вместо make.
- В контейнерах minimal образа (scratch, distroless) целесообразно собирать артефакты вне контейнера и копировать в image.
Когда make не поможет:
- Если Makefile использует GNU-специфичные расширения, а установленная версия make несовместима.
- Если инфраструктура CI не предполагает установку дополнительных пакетов — в таком случае используйте заранее подготовленные образа/артефакты.
Ментальная модель: как система ищет команду
- Оболочка принимает команду
make. - По переменной PATH она последовательно проверяет каталоги слева направо.
- При первом совпадении выполняет найденный бинарник.
- Если совпадений нет — оболочка выдаёт “command not found”.
Следствие: важно знать, где установлен make, и убедиться, что путь к нему расположился раньше других записей, вызывающих коллизии.
Проверка прав и повреждений
Если make установлен, но не запускается, проверьте:
ls -l $(which make)
file $(which make)
ldd $(which make) # для Linux — зависимости либВ Windows убедитесь, что антивирус/защитник не пометил файл как вредоносный и не поместил его в карантин.
Рольные чек-листы (разработчик / CI-инженер / системный администратор)
Разработчик:
- Проверить
make --version. - Если отсутствует — установить через пакетный менеджер или использовать WSL.
- Убедиться, что Makefile совместим с GNU make.
CI-инженер:
- Добавить установку make в pipeline или использовать образ с предустановленным make.
- Протестировать сборку на чистом образе.
- Проверить переменные PATH в среде исполнителя.
Системный администратор:
- Установить make системно через менеджер пакетов.
- Обеспечить безопасность и контроль версий.
- Документировать расположение бинарей и policy обновлений.
Критерии приёмки (как проверить, что всё исправлено)
make --versionвозвращает информацию о версии.which make/where makeуказывает на рабочий бинарь.- Простая цель Makefile выполняется без ошибок:
make hello(при наличии такой цели). - CI-пайплайн проходит стадии сборки, требующие make.
Тестовые случаи для проверки
- Установить make в чистом контейнере и выполнить
make --version. - Установить make, но не добавлять PATH — проверить, что оболочка не видит команду.
- Заблокировать бинарь антивирусом — проверить сообщение об ошибке.
- Использовать несовместимую версию make и убедиться, что специфичные цели дают понятную ошибку.
Матрица совместимости (кратко)
- Debian/Ubuntu — GNU make через apt (совместимо)
- Fedora/RHEL — GNU make через dnf/yum (совместимо)
- Arch — pacman (совместимо)
- macOS — Xcode Command Line Tools (совместимо), Homebrew опция
- Windows — не встроен: использовать WSL, Chocolatey, MSYS2, Cygwin, Scoop
Шаблон действий (SOP)
- Выполнить
which make. - Если не найдено — установить make командой для вашей ОС.
- Если установлен, но не найден — добавить путь в PATH и перезапустить терминал.
- Проверить
make --versionи запустить тестовую цель. - Обновить документацию проекта о требованиях к среде разработки.
Частые ошибки и советы по отладке
- Ошибка: команда возвращает путь, но
make --versionне запускается — проверьте права на файл и зависимости. - Ошибка: несколько версий make в PATH — используйте полные пути или корректируйте порядок PATH.
- Совет: для воспроизводимой сборки используйте контейнеры/VM с фиксированными версиями инструментов.
Короткая справка по командам
- Установить make (Debian):
sudo apt install makeилиsudo apt install build-essential. - Установить make (macOS):
xcode-select --install. - Установить make (Chocolatey):
choco install make -y. - Проверить версию:
make --version. - Найти исполняемый файл:
which make/where make.
Read more about this topic
- Microsoft Replaces JScript with JScript9Legacy for Better Security in Windows 11
- Windows 11 Build 27898 Adds Small Taskbar Icons, Quick Recovery, Smarter Sharing
- Windows 11 Build 27898 Bug Brings Back Classic Vista Startup Sound, Again
- Windows 11 Build 22631.5696 rolls out to Beta channel with important fixes
- Windows 11’s Patch Tuesday update fixes annoying Firewall error log
Заключение
Ошибка “make: command not found” обычно решается установкой GNU make или корректной настройкой PATH. Для Windows чаще всего рекомендую WSL или пакетные менеджеры (Chocolatey, Scoop, MSYS2). На macOS достаточно Xcode Command Line Tools. После установки всегда проверяйте make --version и запускайте простую цель Makefile.
Если проблема остаётся, опишите в комментарии вашу ОС, как вы устанавливали make и вывод команд which make / make --version, — это поможет дать точное решение.
Summary:
- Проверьте синтаксис и наличие make.
- Установите make подходящим способом для вашей платформы.
- Убедитесь, что путь к make включён в PATH.
- Тестируйте работу утилиты и документируйте решение.
Похожие материалы
RDP: полный гид по настройке и безопасности
Android как клавиатура и трекпад для Windows
Советы и приёмы для работы с PDF
Calibration в Lightroom Classic: как и когда использовать
Отключить Siri Suggestions на iPhone