0

我正在尝试在 python (PLY) 中编写一个小型 C++ 解析器,仅涵盖整个 C++ 功能的一小部分(没有模板、没有指针、没有操作重载)。我目前有很多适用于代码片段的东西,但不适用于整个 C++ 项目。所以我最大的问题是处理 C++ 预处理器(包括、定义、替换、ifdef、...)。

有谁知道一个程序可以在预处理后为您提供 cpp 文件的结果?

可以从 python 调用的东西将是完美的。

我知道大多数编译器都可以,但我不想在我的小解析器中包含另一个编译器。

我尝试了 boost::wave 但它没有用。因为: 使用升压波

有什么提示吗?

4

2 回答 2

2

GNU C 预处理器可作为单独的程序使用。它适用于 C 和 C++(以及 Objective-C)。

在我的系统上,它安装为/usr/bin/cpp.

(它是根据 GNU GPL 获得许可的;如果您要将它合并到您自己的项目中,请注意。)

于 2013-09-17T15:43:44.627 回答
-4

您需要通过添加以下命令来添加更多库文件。

Sudo apt-get install libboost -alt-dev emake subversion
Sudo apt-get update
Sudo apt-get upgrade
Sudo apt-get install build-essential
Bcc -v
Make -v
Sudo apt-get install git

然后你需要重新启动。这适用于.cpp .C .cppc++ 文件扩展名。

于 2015-12-06T04:37:51.717 回答