Управление простыми переменными в GNU Make - PullRequest
0 голосов
/ 11 февраля 2011

Я пытаюсь управлять переменными в make, но я вижу, что есть несколько типов переменных оболочки с {}, переменными, установленными с () и $$, но сейчас я просто пытаюсь управлять простыми текстовыми переменными с помощью этого простого кода в моем Makefile

@WORD=GNUMAKE
    FOUND=1
    PWD=$(PWD)
    $(findstring $$WORD,$$PWD)
    $(shell echo $$FOUND)
    $(shell echo $$PWD)

Что ж, я действительно удивлен, что ничего с этим не получаю, для себя я мог бы использовать только переменные, отмеченные $$, потому что мой $ make не распознает () или {}, но другое дело, что компилятор выдает мне ошибку

FOUND=1
PWD=/home/ogonzalezr/GNUMAKE/changedir
/home/ogonzalezr/GNUMAKE/changedir
make: execvp: /home/ogonzalezr/GNUMAKE/changedir: Permission denied
make: *** [all] Error 127

Теперь мне интересно, настроен ли мой комп на ОС? может быть, мы говорим о какой-то связанной ошибке? Я действительно потерян, и действительно извращен, потому что я не понимаю ничего, что могло бы произойти.

Спасибо за ваши ответы,

Приветствую всех

1 Ответ

0 голосов
/ 11 февраля 2011

С чего начать?Вы неправильно используете переменные.

Поместите это в начало make-файла:

FOUND = 1

all:
  echo $(FOUND)

Затем запустите make.Вы должны заставить это работать, прежде чем пытаться что-то более сложное.

...