如何在linux上关闭gcc预处理器?
How do I turn off the gcc preprocessor on linux?
我在谷歌上搜索了"关闭linux上的gcc预处理器";很长一段时间以来(用这个确切的短语),一切都变得无关紧要了。例如,我想关闭所有,除了预处理器(与我想要的相反)或加压警告。有人知道禁用预处理器的方法吗?我发现了一个Facebook开发的,并声称速度更快,我想测试一下。
将你的文件命名为program.i
而不是program.c
,它将被GCC/Clang视为已经预处理并直接发送给编译器。
的例子:<>之前$ cat .iInt printf(const char *f,…);int main () {printf (" hello world n");}$ GCC t.i && ./a.out你好世界
我最近找到了一个解决标题中所描述的问题的方法(不管最终目标是什么),它似乎比更改源文件的扩展名更清晰,所以我记录了它,希望有人会发现它有用:告诉GCC源文件已经被预处理,
gcc -x cpp-output -o hello hello.c
我测试了lornix在评论中所说的内容,并且它有效:
将另一个/较新的预处理器命名为"cpp",并将其放在您的路径中,并将原始cpp重命名为cpp-other或cpp- origin。考虑到你正试图取代cpp,它会很好地工作。
相关文章:
- 错误:无效的预处理指令 #i 的意思是 #if?
- Visual C++: MSVC vs. GCC+CLANG: 处理 lambda 捕获类成员变量,正确的方法是什么?
- C++预处理会生成变量成员、资源库和映射
- 使用预处理指令检查是否包含标头?
- 预处理的 C/C++ 文件是否特定于计算机?
- 使用 GCC 对 C 文件进行部分预处理(不删除 "define" 指令)
- 在 CPLEX 中求解线性规划,无需剪切和预处理
- CPP -D 选项,用于预处理 Fortran 代码
- 错误:粘贴"tmp_UINT"和"+"未提供有效的预处理令牌
- 任务计划程序库的预处理不起作用 - 多定义错误
- Eclipse 问题 - 编译期间不考虑 .c 和 .cpp 文件中定义的预处理
- 使用python预处理后,C++(opencv)中的垫子类型数据与image_to_array相同
- Howo 使用 cl 预处理为 masm 组装生成一个单独的文件
- 我有一个预处理的 C/C++ 源文件 (cacti.i).如何从这个 .i 文件生成可执行二进制文件,以便我可以像 ./
- 如何使用Visual Studio C/C++编译器(cl.exe)来预处理我的objective-C代码
- GCC 预处理器输出和编译一次通过,v2
- 是具有预处理前分支实现的结构违反ODR
- 与不完整的Cholesky预处理的共轭梯度返回特征库的意外错误
- 使用 gcc 或 cpp 预处理 C 代码,而无需解析宏
- gcc 预处理的表单哈希符号 + 数字"# 1"输出行是什么意思?