从 fortran 代码中清除预处理器条件
Posted
技术标签:
【中文标题】从 fortran 代码中清除预处理器条件【英文标题】:Clean preprocessor conditionals from fortran code 【发布时间】:2018-10-24 01:31:23 【问题描述】:我使用一个非常长的 Fortran 代码,其中充满了预处理器 (#if) 条件,有没有办法编译它并仅使用满足条件的部分代码获取源文件?
【问题讨论】:
为什么不直接运行预处理器呢? 为什么你想这样做? 【参考方案1】:正如 chw21 所说,您可以直接运行预处理器。 cpp
(带有正确的标志)或fpp
命令,取决于您的编译器。
因为你可能不确定正确的标志,你也可以让编译器为你做这件事。在 GCC (gfortran) 中,它是 -E
标志,它将强制编译器在预处理后停止。您必须将标准输出重定向到文件,因为预处理后的代码会返回到标准输出。
【讨论】:
谢谢你们,Vladimir 和 chw21。fpp -P src.F src_clean.F
完成了这项工作。
如果您对@VladimirF 的回答感到满意,请接受。以上是关于从 fortran 代码中清除预处理器条件的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Fortran 中将 OpenACC 与 cublasDgetrfBatched 接口?