CPP -D 选项,用于预处理 Fortran 代码

CPP -D option for preprocessing of Fortran codes

本文关键字:预处理 Fortran 代码 用于 选项 CPP      更新时间:2023-10-16

我正在尝试理解一个makefile,其中Fortran代码与cpp一起使用,以以下方式进行预处理,

cpp -P -traditional -DMPI -DLINUX -DX86_64 -DGFORTRAN -D'HEADER="testfile.h"' -D'ROOT_DIR="/home/Desktop"'...-D'FILE_DIR="/home/Desktop/MYFILES"' -I/usr/local/include file.F

我了解包含目录的用法,但我无法理解此处列出的 -D 选项(命名为 CPPFLAGS(的用途。我看到如果我删除任何 -D 选项,我的输出就会被修改(我只得到程序的开始和结束,中间没有文本(。

编辑:我有一个ifdef选项列表,我的makefile使用带有-D选项的不同子目录。它在那些目录中查找什么,其中定义了选项的文件?

如果我理解正确,你只想弄清楚-D的含义。 gcc -D 定义了预处理器要使用的宏。 语法如下:

$ gcc -Dname [options] [source files] [-o output file]
$ gcc -Dname=definition [options] [source files] [-o output file]

如果删除任何 -D,则表示未定义此宏。因此,您的输出可能会更改。