如何在makefile中加入doxygen命令。

问题描述 投票:0回答:1

我使用的是linux,过滤doxygen的输出如下。

doxygen 2> >(grep "Arguments.h") 1> /dev/null

这只是集中在故障内 Arguments.h. 现在,我想把所有这些都放在一个最小的makefile中,用于 GNU Make 4.3

doc:
    doxygen 2> >(grep "Arguments.h") 1> /dev/null

当然,后来居上 Arguments.h 由其他文件。但这是行不通的:回复是

doxygen 2> >(grep "Arguments.h") 1> /dev/null
/bin/sh: -c: line 0: syntax error near unexpected token `>'
/bin/sh: -c: line 0: `doxygen 2> >(grep "Arguments.h") 1> /dev/null'
make: *** [makefile:2: doc] Error 1

据我所知... ...一个人必须逃避什么,但不知道是什么... ... 有什么专家可以帮助我吗?

gnu-make
1个回答
1
投票

这与转义等无关。 这与使用的shell有关。

GNU make (和所有版本的make一样) 总是调用 /bin/sh 来运行配方,那是一个POSIX标准的shell(或类似于它)。 你使用的命令肯定是 POSIX标准所支持的,它似乎使用了许多仅作为POSIX标准的增强功能。bash shell。

如果你想用 bash 功能,你必须告诉它应该使用 bash 作为外壳,而不是 /bin/sh. 你可以把它添加到你的makefile中。

SHELL = /bin/bash
© www.soinside.com 2019 - 2024. All rights reserved.