Сборка проектов LinuxWindowsmacOS

make: *** No rule to make target — нет правила для цели

  • Обновлено
  • Чтение ≈ 1 минута

Краткий ответ

make не нашёл файл-зависимость или цель. Проверьте имя, пути и выполнение configure/cmake.

В этой статье
  1. Что означает ошибка
  2. Причины и признаки
  3. Пошаговое решение
  4. Если проблема осталась

#Что означает ошибка

Сообщение
No rule to make target

make не нашёл файл-зависимость или цель. Проверьте имя, пути и выполнение configure/cmake.

#Причины и признаки

Возможная причинаКак узнатьЧто делать
ОпечаткаИмя цели отличается от Makefile.Исправьте регистр и написание цели.
Нет configureГенератор Makefile не запускался.Выполните configure/CMake согласно README.
Файл удалёнЗависимость ссылается на отсутствующий исходник.Исправьте путь к файлу, make clean его не создаст.
Неверный каталогСборку запускают вне каталога с правилами.Перейдите в нужную папку сборки.

#Пошаговое решение

  1. Проверьте рабочую папку и файл сборкиОткройте терминал в корне проекта, выполните pwd (Windows: cd) и ls (Windows: dir). В папке должен существовать Makefile/makefile, либо файл создаётся после запуска CMake или configure. В сообщении No rule to make target X запишите точное X: это может быть цель или имя отсутствующего файла.
  2. Посмотрите, какие цели реально объявленыОткройте Makefile в редакторе и найдите правило вида имя: зависимости; имена чувствительны к регистру. Не предполагая, что цель install существует, проверьте README проекта. Если ошибка у зависимости, убедитесь, что путь и имя исходного файла корректны после перемещения или переименования.
  3. Если файл генерируется — сначала запустите генераторДля проекта с CMakeLists.txt из корня выполните cmake -S . -B build, затем cmake --build build. Не запускайте make в пустом корне, если Makefile находится в каталоге сборки. Для Autotools следуйте README по последовательности ./configure → make; эти способы альтернативны.
  4. Проверьте результат и оставшуюся цельПовторите точную команду сборки и убедитесь, что нужная цель найдена. Если ошибка остаётся, сохраните строку из Makefile и текущую директорию; make clean и удаление каталога сборки без проверки не создают отсутствующее правило.

#Если проблема осталась

Если «make: *** No rule to make target — нет правила для цели» повторяется, сохраните время, состояние подключения и точный текст ошибки. Не меняйте сразу несколько настроек — иначе станет трудно понять, какое действие повлияло на результат.

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.