execvp
в сообщении об ошибке - это ключ, я думаю. Я полагаю, это говорит о том, что существует слишком много уровней символических ссылок при попытке найти саму команду ln .
Пример:
all:
ln -nsf /tmp/foo /tmp/foo
/tmp/foo/ln x y
Запуск "make" с ошибками этого Makefile:
make: execvp: /tmp/foo/ln: Too many levels of symbolic links
Итак, как ваш Makefile вызывает ln
, точно? Что в твоем PATH
и т. Д.?
[обновление]
Могу поспорить, Makefile испортит ваш путь. Вот Makefile, который воспроизводит ваше точное сообщение об ошибке:
PATH=/tmp/foo
all:
/bin/ln -nsf /tmp/foo /tmp/foo
ln x y