#windows #makefile #build #gnu-make
#Windows #makefile #сборка #gnu-make
Вопрос:
Я новичок в Windows make files.Я пытаюсь понять несколько вещей. Как запускать команды (команды DOS) из файлов Windows mk. Я выполнил следующую команду из командной строки cmd—
find testsuite
и это дает правильный вывод. Теперь я пытаюсь запустить то же самое из файла Windows mk следующим образом — $(shell find testsuite). Однако это выдает ошибку «НАЙТИ: неверный формат параметра». Является ли $(командное имя оболочки …) правильным способом или, если нет, что указывает $(shell …)? Также как получить статус выхода команды.Добавление лог-строки, как показано ниже, после команды ничего не выводит $ (предупреждение $ (уровень ошибок)
Ответ №1:
Однако это выдает ошибку «НАЙТИ: неверный формат параметра».
Это собственная find
утилита Windows. Он ищет строки в файлах, вроде grep
как без регулярных выражений :-(. Поэтому для этого требуется как минимум два аргумента.
Также как получить статус выхода команды.
Для $(shell ...)
функции это в .SHELLSTATUS
переменной.
Комментарии:
1. Спасибо за ответ, я новичок в этом, поэтому мне нужно еще несколько объяснений. в принципе, какую утилиту вызывает $(shell find ..) ?
2. То же, что вызывается в рецептах:
$(SHELL) $(.SHELLFLAGS) ...
. Читать это .