Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
执行shell命令的Makefile挂起_Shell_Awk_Sed_Makefile_Grep - Fatal编程技术网

执行shell命令的Makefile挂起

执行shell命令的Makefile挂起,shell,awk,sed,makefile,grep,Shell,Awk,Sed,Makefile,Grep,我的makefile遇到了一个问题,因为当我发出makedebug时它会挂起 以下是目录树: ├── makefile └── src └── config ├── config_192_168_3_226.h └── config.h 以下是三个文件的内容: 生成文件: BOARD := $(shell awk '/BOARD_VERS/{print $NF}' $(echo "src/config/$(grep -oP "(?

我的makefile遇到了一个问题,因为当我发出
makedebug
时它会挂起

以下是目录树:


├── makefile
└── src
    └── config
        ├── config_192_168_3_226.h
        └── config.h
以下是三个文件的内容:

生成文件:

BOARD :=  $(shell awk '/BOARD_VERS/{print $NF}' $(echo "src/config/$(grep -oP "(?<=\")(.*?)(?=\")" src/config/config.h)"))

.PHONY: debug

# Debug rule
debug:
    @echo 'BOARD        :' $(BOARD)
config_192_168_3_226.h:

#define BOARD_VERS      V1

我用来设置BOARD变量的命令工作正常,但在我的makefile中发出时却不能正常工作


awk'/BOARD\u VERS/{print$NF}'$(echo“src/config/$(grep-oP)”(?这个
$
是专门制作的。如果你想把它传递给shell,在配方和
$(shell…
函数中,你必须以
$
的形式转义它

因此,这里:

BOARD :=  $(shell awk '/BOARD_VERS/{print $NF}' $(echo "src/config/$(grep -oP "(?<=\")(.*?)(?=\")" src/config/config.h)"))
BOARD :=  $(shell awk '/BOARD_VERS/{print $NF}' $(echo "src/config/$(grep -oP "(?<=\")(.*?)(?=\")" src/config/config.h)"))
BOARD :=  $(shell awk '/BOARD_VERS/{print $$NF}' $$(echo "src/config/$$(grep -oP "(?<=\")(.*?)(?=\")" src/config/config.h)"))