В make-файле, сгенерированном Eclipse, я вижу следующие правила:
./Cores/$(TARGET).core.3.srec : ../$(TARGET).core.3/Debug/$(TARGET).core.3.elf
@mkdir -p ./Cores/
@e-objcopy --srec-forceS3 --output-target srec "$<" "$@".temp
@echo Creating srec file for CoreID\<0x826\>
@head --lines=1 "$@".temp | sed 's/0000/0826/' > "$@"
@tail --lines=+2 "$@".temp >> "$@"
Какова цель " @ " в начале строк рецепта?
Чтение руководства пользователя GNU Make Я не смог найти ссылку на это использование @.Затем я предположил, что он фактически передается в оболочку как есть.
Итак, читая руководство по BASH, единственное место, которое я мог бы связать с этим использованием, это подстановка команд, когда установлена опция extglob
.Однако попытка сделать это в командной строке вызвала ошибку.