Perl中的C代码预处理

时间:2013-06-18 11:47:55

标签: c perl preprocessor

我使用C中的Perl代码解析器。

目前我需要预处理代码。 预处理的实现似乎需要做很多工作,所以我正在寻找一个允许预处理文件的脚本或库。

我发现了以下可能性:

  1. Text::CPP
  2. Filter::CPP
  3. 这两个都需要我在Windows机器上没有的cpp。还有其他选择吗?

1 个答案:

答案 0 :(得分:6)

我不确定我是否理解你的需求,但你自己实施这个可能是一个糟糕的选择。我最近也在寻找替代C预处理器。

Text::CPP模块应该只需要编译器来编译自己。如果您可以找到预编译版本,它应该适合您。

同一作者的JCPP Java C Preprocessor可能会起作用。您可能需要在外部进行处理,然后加载结果。

Filepp是一个较旧的Perl程序,声称CPP兼容性。有一个预编译的Windows二进制文件可供下载。

有一个全新的Lua C-Preprocessor LCPP可能是你可以使用的东西。作为独立版可能最好,但您可以使用Inline::Lua

SWIG带有自己的预处理器实现。我认为这可用于Windows。

还有什么? Boost Wave Preprocessor可能运行良好,适用于Windows。 MSVC编译器可以preprocess to a file

尽管如此,最简单和最好的长期解决方案可能只是安装CPP。它是GCC的一部分,您可以从CygwinMinGW获取。