我想用m4
做一些保存类型的东西,所以肯定需要循环。当我阅读m4
文档时,在第6章中有迭代的6.4
和6.5
。但看起来foreach
不是内置宏(复合?),我如何使用它?在示例中,他们使用 -I examples
选项调用 m4
,并include('foreach.m4')
,但此文件似乎不存在,错误为:
cannot open `foreach.m4': No such file or directory
任何帮助不胜感激!
李
必须使用完整路径作为要-I
的参数(或相对路径,但必须指定目录)。 请注意,示例目录并不总是与m4
一起安装(与 RedHat 一起分发的 m4-1.4.1 rpm 不包括示例目录。 最简单的方法是打开一个 m4 压缩包并使用它。 (例如,在/tmp
中打开压缩包并运行m4 -I/tmp/m4-1.4.11/examples
另请注意,-I
是 m4 的非标准选项,因此请确保您实际使用的是支持该参数的 m4
版本。(例如,gnu-m4
)