#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 `