我想使用 Eclipse 的 CDT (8.1.2) 基于 Makefile 的构建器来构建 OCaml 项目。
但是,OCaml 编译器在不同的行上输出带有行号和错误原因的多行错误消息(下面的示例)。
我可以创建一个涵盖多行构建输出的构建错误解析器,如果可以,如何?
我想解析的示例错误消息:
File "src/filename.ml", line 91, characters 35-54:
Error: Unbound value foo
期望的输出:
说明:未绑定值 foo 文件:src/filename.ml 行:91
(文件和行是微不足道的,但描述是问题所在。)
更新:
我现在有一个用于 OCaml 的构建错误解析器 - 来自 OcaIDE 项目。
我使用 CDT Make 构建器来驱动构建,并使用 OCaIDE 的错误解析器进行错误解析。OCAide 的错误解析器还有一个优势,它可以指向报告为导致错误的行中的特定跨度,这是 CDT 的正则表达式解析器无法做到的。
这样我的 OCaml 相关问题就解决了。但是,多行错误解析的普遍问题仍然存在。