3

我想m4用来做一些节省类型的东西,所以肯定需要循环。当我阅读m4doc 时,在第 6 章中有6.4and 6.5for 迭代。但看起来那foreach不是内置宏(复合?),我怎么能使用它?在示例中,他们m4使用-I examples选项和调用include('foreach.m4'),但此文件似乎不存在,错误如下:

cannot open `foreach.m4': No such file or directory

任何帮助表示赞赏!

4

1 回答 1

2

您必须使用完整路径作为参数-I(或相对路径,但必须指定目录)。请注意,examples 目录并不总是随同安装m4(RedHat 分发的 m4-1.4.1 rpm 不包括 examples 目录。)最简单的做法是解压缩 m4 tarball 并使用它。(例如,解压 tarball/tmp并运行m4 -I/tmp/m4-1.4.11/examples

另请注意,这-I是 m4 的非标准选项,因此请确保您实际使用的m4是支持该参数的版本。(例如,gnu-m4

于 2012-11-23T15:54:30.633 回答