gpt4 book ai didi

linux - 有没有办法定义自定义隐式 GNU Make 规则?

转载 作者:行者123 更新时间:2023-12-05 01:51:34 36 4
gpt4 key购买 nike

我经常从 dot(graphviz 格式)文件中创建 png 文件。这样做的命令如下:

$ dot my_graph.dot -o my_graph.png -Tpng

但是,我希望能够使用更短的命令格式,例如 $ make my_graph.dot 来自动生成我的 png 文件。

目前,我使用的是 Makefile,我在其中定义了以下规则,但配方仅在包含 Makefile 的目录中可用

%.eps: %.dot
dot $< -o $@ -Teps

是否可以定义自定义隐式 GNU Make 配方?这将允许上述配方在系统范围内可用

如果没有,您使用什么解决方案来解决这类问题?

设置:

  • 带有 ZSH/Bash 的 Fedora Linux

最佳答案

您可以在 shell 的启动文件中定义 shell 函数,例如

dotpng()
{
echo dot ${1%.dot}.dot -o ${1%.dot}.png -Tpng;
}

这个函数可以这样调用

dotpng my_graph.dot

dotpng my_graph

代码${1%.dot}.dot strip .dot来自文件名(如果存在)并(再次)附加它以允许 my_graph.dotmy_graph作为函数参数。

关于linux - 有没有办法定义自定义隐式 GNU Make 规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72182151/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com