Поиск по сайту:

Как исправить ошибку «make: command not found» в Ubuntu


Резюме: Чтобы исправить ошибку «make: command not found» в Ubuntu Linux, вам необходимо установить make. Чтобы установить make, запустите команду «sudo apt install make» или, чтобы одновременно установить стандартные средства разработки, используйте команду «sudo apt install build-essential».

Стандартные установки Ubuntu не включают утилиту Linux make. Он используется в основном разработчиками программного обеспечения, но в некоторых ситуациях может понадобиться даже не программистам. Вот как установить make в Ubuntu Linux.

Что означает «make: command not found»

Если вы видите ошибку «make: command not found» в Ubuntu (или другом дистрибутиве Linux), это означает, что команда make в настоящее время не установлена в вашей системе. Это нормально — Ubuntu по умолчанию не устанавливает команду make.

Утилита make часто используется при компиляции программного обеспечения из исходного кода в Linux. Независимо от того, пытаетесь ли вы запустить команду make самостоятельно или используете программу, вызывающую make в фоновом режиме, вы увидите сообщение «make: команда не найдена» ошибка о том, что она не установлена.

Чтобы исправить ошибку «make: command not found», вам просто нужно установить make. Вы можете сделать это с помощью apt, стандартного менеджера пакетов Ubuntu.

Как исправить «сделать: команда не найдена» в Ubuntu

Чтобы исправить «make: command not found» в Ubuntu, вам необходимо установить утилиту make.

Чтобы установить только утилиту make, выполните в Терминале следующую команду:

sudo apt install make

Мы рекомендуем установить пакет build-essential, который также включает make и другие важные пакеты для сборки программного обеспечения. Выполните следующую команду в терминале, чтобы установить его:

sudo apt install build-essential

После установки make вы больше не увидите ошибку «make: command not found». Вы можете запустить команду make непосредственно из командной строки или запустить сценарий установки, который снова зависит от make, чтобы продолжить.

Что такое утилита make?

Инструмент make – это утилита командной строки, помогающая создавать программные проекты. Однако, чтобы оценить его полезность, вы должны понимать, как обычно разрабатывается программное обеспечение. Когда программисты пишут код, они вводят свои программные инструкции в редактор или интегрированную среду разработки. Что-то должно произойти, чтобы преобразовать текстовые файлы в исполняемый двоичный файл. Этот шаг называется компиляцией, и для него требуется программа, называемая компилятором.

Компилятор читает файлы исходного кода и переводит их в низкоуровневые инструкции, понятные процессору. Он генерирует двоичный файл, содержащий все эти инструкции. Это двоичный файл, который вызывается и выполняется, когда вы пытаетесь запустить свою программу.

Компиляторы — это сложные программы. У них есть очень много параметров командной строки, которые можно вызывать для каждого файла, который им нужно скомпилировать. А в сложном проекте разработки могут быть сотни разных файлов исходного кода. Это множество настроек, которые нужно отслеживать. Другая сложность заключается в том, что вы не хотите компилировать файлы, которые не изменились с момента их последней компиляции. Это пустая трата времени.

 Makefile – это простой текстовый файл, содержащий все настройки и правила, необходимые для встраивания проекта разработки в исполняемый двоичный файл. Это также позволяет избежать повторной компиляции файлов, которые не изменились с момента предыдущей компиляции. Программа, которая читает make-файл и координирует сборку проекта, называется make.

Контролируемую перекомпиляцию и сборку проекта можно выполнить с помощью одной команды: make. Некоторые интегрированные среды разработки используют автоматически сгенерированные make-файлы и выполняют фазу компиляции, вызывая make в фоновом режиме.

Я не программист, почему меня это должно волновать?

Его основной пользовательской базой могут быть программисты, но все же могут быть причины, по которым вам может потребоваться установка make на ваш компьютер, даже если вы никогда не пишете ни строчки кода.

Некоторые программные пакеты не включаются в установочные файлы. Чтобы получить рабочую версию программы, вам нужно либо скачать архивный файл, содержащий весь исходный код, либо вам нужно клонировать Git-репозиторий программы, чтобы получить исходный код, а затем запустить make.

Если вы используете VirtualBox для запуска других дистрибутивов Linux в качестве виртуальных машин, вы знаете, что для наилучшего взаимодействия вам необходимо установить гостевые дополнения VirtualBox внутри гостевой операционной системы. Для этого необходимо собрать модули ядра VirtualBox Guest Additions, а для этого make должен присутствовать в гостевой операционной системе.

Как установить make с помощью apt

Если вы работаете с новой установкой Ubuntu, на ней не будет make. Если вы администрируете компьютер для кого-то другого, стоит проверить, не установлен ли уже make.

Введите команду make и нажмите «Enter».

make

Если вы видите сообщение от make жалующееся на то, что вы не дали ему определенную команду и он не смог найти make-файл, значит, make установлен и работает. Вы можете использовать команду whereis, чтобы увидеть, где расположены двоичные страницы make и страницы man.

whereis make

Если вы видите сообщение от Bash о том, что не может найти команду make, значит make не установлен.

Если вы какое-то время не применяли никаких обновлений, стоит сначала запустить команду apt с параметром update.

sudo apt update

Мы можем легко установить make с помощью этой команды.

sudo apt install make

Однако без стандартного набора инструментов разработки make бесполезен. Так что можно и их установить. Удобно, что они объединены в единый пакет под названием «Build-Essential». При установке этого пакета устанавливаются такие инструменты, как gcc и g++ , а также make.

Обычно я пропускаю шаг установки make сам по себе и сразу перехожу к установке пакета «build-essential». Он убивает двух зайцев одним выстрелом.

Установите пакет «build-essential» с помощью этой команды.

sudo apt install build-essential

В «build-essential» много инструментов, и их установка занимает несколько минут. Однако это стоит небольшого ожидания, так как они сослужат вам хорошую службу. Теперь вы должны быть в состоянии справиться со всеми видами сборок программного обеспечения.

Что делать, если Bash все еще не может найти make?

Очень редко устанавливается make, но Bash все равно не может его найти. Чтобы решить эту проблему, мы могли бы сначала попробовать простой вариант. Вы можете принудительно переустановить make с помощью этой команды.

sudo apt install --reinstall make

Если это не сработает, вы можете использовать команду find, чтобы попытаться найти двоичный файл make. Затем мы можем убедиться, что он находится в каталоге, указанном в переменной окружения PATH.

Эта команда будет искать вашу файловую систему в корневом каталоге в поисках файла с именем «make». Он направляет вывод в less .

find / -type f -name "make" | less

После завершения поиска найдите слово «make» в less, нажав косую черту «/», введя «make» и нажав «Enter». Вы увидите все строки, содержащие слово «сделать».

Как видите, команда find нашла три файла, которые Bash использует как часть завершения командной строки «Tab», и двоичный исполняемый файл. Но что-то пошло не так с этой установкой, и двоичный файл make был помещен в каталог «/etc/».

Мы переместим его туда, где он должен быть, и make должен начать работать.

sudo mv /etc/make /usr/bin

Теперь, если мы попытаемся использовать команду make, все сообщения, которые мы получим, должны исходить от make, а не от Bash.

make

Отлично, у нас есть работа над этим компьютером. Вы больше не увидите ошибку «make: command not found».

Если вы можете сделать это здесь

Вы можете сделать это где угодно.

Эти методы должны работать и в других дистрибутивах. Вам просто нужно заменить команды установки на те, которые используются в вашем собственном дистрибутиве.

В Fedora вы можете использовать эту команду для установки инструментов сборки вместе с make.

sudo dnf groupinstall "Development Tools" "Development Libraries"

На Manjaro используйте эту команду.

sudo pacman -S base-devel