在GNU Make中管理简单变量

时间:2011-02-11 11:59:00

标签: makefile gnu-make

我试图在make上管理变量,但我看到有几种类型作为shell变量{},变量设置为()和$$但是,现在我只是尝试使用我的简单代码来管理简单的文本变量生成文件

@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

现在我想知道,我的操作系统是否完好?也许我们在谈论一些相关的bug? 我真的输了,也真的扭曲了,因为我不明白任何可能发生的事情。

感谢您的回答,

所有人的问候

1 个答案:

答案 0 :(得分:0)

从哪里开始?你使用变量是错误的。

将它放在makefile的顶部:

FOUND = 1

all:
  echo $(FOUND)

然后运行make。在尝试任何更复杂的事情之前,你应该让它工作。