Xcode 11 中的 yacc 未生成 yacc 令牌头文件
yacc token header file not being generated by yacc in Xcode 11
我可能误诊了这一点,但是当我在 Xcode 中编译我的 flex/bison 项目时,它似乎没有更新包含标记的头文件,在我的例子中 parser.h
。我在我的 .y 中添加了一个新标记,但它没有出现在我的 .l
中
如果您在 yacc/bison 中指定 -d
标志,通常会发生。我以为这会默认打开,但为了确保我在目标的构建设置中将 -d 添加到 'other yacc flags' 设置,但这似乎没有任何效果。
我还怀疑它可能会生成 parser.tab.h,但这也没有发生。
最有可能的是 XCode 使用 -y
标志调用 bison
(可能使用 yacc
命令),结果头文件被命名为 y.tab.h
,与旧的基于 yacc 的编译脚本兼容。
不推荐使用"yacc"模式;仅在需要处理遗留源代码时才应使用它。所以值得尝试弄清楚如何让 XCode 不使用 -y
标志。
我可能误诊了这一点,但是当我在 Xcode 中编译我的 flex/bison 项目时,它似乎没有更新包含标记的头文件,在我的例子中 parser.h
。我在我的 .y 中添加了一个新标记,但它没有出现在我的 .l
如果您在 yacc/bison 中指定 -d
标志,通常会发生。我以为这会默认打开,但为了确保我在目标的构建设置中将 -d 添加到 'other yacc flags' 设置,但这似乎没有任何效果。
我还怀疑它可能会生成 parser.tab.h,但这也没有发生。
最有可能的是 XCode 使用 -y
标志调用 bison
(可能使用 yacc
命令),结果头文件被命名为 y.tab.h
,与旧的基于 yacc 的编译脚本兼容。
不推荐使用"yacc"模式;仅在需要处理遗留源代码时才应使用它。所以值得尝试弄清楚如何让 XCode 不使用 -y
标志。