Ошибка в Make-файле, не Может Установить Shell на/bin/bash (WSL)

Я работаю, делают версию 4.1 Созданной для x86_64-pc-linux-gnu на Ubuntu WSL. У меня есть следующий make-файл, и я пытаюсь работать, делают с ним. Однако это перестало работать, когда я выполняю его с сообщением об ошибке:

make: /bin/bash : Command not found
makefile:18: recipe for target 'cc' failed
make: *** [cc] Error 127

Я проверил/bin/папку, и удар делает существует так, я понятия не имею, почему это не работает. Кто-либо мог просветить меня?

0
задан 31 December 2018 в 09:32

1 ответ

GNU make анализирует запаздывающий пробел после SHELL := /bin/bash как часть исполняемого имени. Как отмечено в GNU сделайте: Как Использовать Переменные

Можно также использовать их для введения управляемого ведущего пробела в значения переменных. Ведущие пробельные символы отбрасываются от Вашего входа перед заменой ссылок на переменную и вызовов функции; это означает, что можно включать ведущие пробелы в значение переменной путем защиты их со ссылками на переменную, как это:

nullstring :=
space := $(nullstring) # end of the line

Здесь значение переменного пространства является точно одним пространством. Комментарий '# конец строки' включен здесь только для ясности. Так как символы конечного пробела не разделяются от значений переменных, просто пространство в конце строки имело бы тот же эффект (но было бы довольно твердо читать). При помещении пробела в конце значения переменной это - хорошая идея поместить комментарий как этот в конце строки, чтобы ясно дать понять намерение. С другой стороны, если Вы не хотите пробельных символов в конце своего значения переменной, необходимо не забыть не помещать случайный комментарий к концу строки после некоторого пробела, такого как это:

dir := /foo/bar    # directory to put the frobs in

Здесь значение переменного dir /foo/bar (с четырьмя конечными пробелами), который был, вероятно, не намерением. (Вообразите что-то как $(dir)/file с этим определением!)

1
ответ дан 26 October 2019 в 16:40

Другие вопросы по тегам:

Похожие вопросы: