команда make не найдена

#makefile #cmake

#makefile

Вопрос:

Я запускаю следующую команду для установки пакета в Ubuntu 16.04 :

 make install
  

В выходных данных у меня есть следующие сообщения :

 make: /usr/bin/sh: Command not found
Makefile:12: recipe for target 'install' failed
make: *** [install] Error 127
  

Ответ №1:

Систем с /usr/bin/sh немного, и они далеко друг от друга. Де-факто стандартным расположением оболочки является /bin/sh .

Что-то в файле makefile этого пакета, должно быть, устанавливает SHELL переменную в /usr/bin/sh , что неверно (вообще не рекомендуется устанавливать SHELL файл makefile, если только ему не нужна конкретная нестандартная оболочка).

Вы можете выполнить make SHELL=/bin/sh , чтобы переопределить эту неправильную настройку.

Комментарии:

1. Я удалил SHELL = usr/bin/sh из rom файл makefile. Теперь у меня есть следующее

2. mehdi@mehdi-HP-250-G5-Notebook-PC:~/pgapack-1.1.1$ make install Установка PGAPack . . . make[1]: ввод каталога ‘/home/mehdi/pgapack-1.1.1/source’ cc -o ../lib/rs6000/binary.o -c -O -I/home/mehdi/pgapack-1.1.1/include -Drs6000 -DWL=32 -DOPTIMIZE -DFAKE_MPI binary.c make[1]: /usr/bin/sh: команда не найдена Makefile:53: рецепт для цели ‘ ../lib/rs6000/binary.o ‘ не удалось создать[1]: *** [../ библиотека /rs6000/binary.o] Ошибка 127 make[1]: выход из каталога ‘/home/mehdi/pgapack-1.1.1/source’ Makefile:12: не удалось выполнить рецепт для целевой ‘установки’ make: *** [установить] Ошибка 2 `