Compilation 清除fortran代码中的预处理器条件
我使用的是一个很长的Fortran代码,其中充满了预处理器(#if)条件,有没有办法编译它并只使用满足条件的部分代码获取源文件 如chw21所述,您可以直接运行预处理器。Compilation 清除fortran代码中的预处理器条件,compilation,fortran,preprocessor-directive,Compilation,Fortran,Preprocessor Directive,我使用的是一个很长的Fortran代码,其中充满了预处理器(#if)条件,有没有办法编译它并只使用满足条件的部分代码获取源文件 如chw21所述,您可以直接运行预处理器。cpp(带有正确的标志)或fpp命令,具体取决于编译器 因为您可能不确定正确的标志,所以也可以让编译器为您这样做。在GCC(gfortran)中,是-E标志,它将强制编译器在预处理后停止。您必须将标准输出重定向到文件,因为预处理的代码将返回到标准输出。如chw21所述,您可以直接运行预处理器。cpp(带有正确的标志)或fpp命令
cpp
(带有正确的标志)或fpp
命令,具体取决于编译器
因为您可能不确定正确的标志,所以也可以让编译器为您这样做。在GCC(gfortran)中,是
-E
标志,它将强制编译器在预处理后停止。您必须将标准输出重定向到文件,因为预处理的代码将返回到标准输出。如chw21所述,您可以直接运行预处理器。cpp
(带有正确的标志)或fpp
命令,具体取决于编译器
因为您可能不确定正确的标志,所以也可以让编译器为您这样做。在GCC(gfortran)中,是
-E
标志,它将强制编译器在预处理后停止。必须将标准输出重定向到文件,因为预处理的代码将返回到标准输出。为什么不在其上运行预处理器?为什么要这样做?为什么不在其上运行预处理器?为什么要这样做?谢谢你们,Vladimir和chw21fpp-P src.F src_clean.F
完成了这项工作。如果您对@VladimirF的答案感到满意,请接受它。谢谢你们,Vladimir和chw21fpp-psrc.F src_clean.F
完成了任务。如果您对@VladimirF的答案感到满意,请接受它。