如何确定 CPPFLAGS 的 c 预处理器标志?

如何确定 CPPFLAGS 的 c 预处理器标志?

我从我的合作者那里得到了一组 Fortran 代码。其中makefile有一行如下。

CPPFLAGS = $(DEF_FLAGS) -DINTEL

因为当我make在终端中使用命令编译 Fortran 代码时,出现了一些错误消息,我的合作者认为这可能是因为我的 c 预处理器不是来自英特尔。因此,-DINTEL需要用正确的 c 预处理器名称替换该标志。

我的问题是在这种情况下如何确定正确的 c 预处理器标志?

我在 Windows 10 笔记本电脑上使用 Oracle VM Virtual Box 运行 Ubuntu(64 位)。

更新

make下面是我在终端中使用该命令后收到的错误消息。删除-DINTEL标志会导致相同的错误消息。

/usr/bin/cpp  -DSPHERICAL  -P -C -traditional  -DINTEL  ptraj.f > ptraj.F90
gfortran   -c  -O3 -fno-range-check   -I /usr/include ptraj.F90
ptraj.F90:1447:132:

 1447 | EP(IP)),KHL(NODES(1),IK),KHSMTH1(NODES(1),IK),DKHSP(NODES(1),IK)
      |                                                             1

Error: Line truncated at (1) [-Werror=line-truncation]
ptraj.F90:1447:132:

 1447 | EP(IP)),KHL(NODES(1),IK),KHSMTH1(NODES(1),IK),DKHSP(NODES(1),IK)
      |                                                             1

Error: Expected array subscript at (1)
ptraj.F90:2628:17:

 2628 |      NODESX = VX(NODES)
      |                 1
Warning: Legacy Extension: REAL array index at (1)
ptraj.F90:2629:17:

 2629 |      NODESY = VY(NODES)
      |                 1
Warning: Legacy Extension: REAL array index at (1)
ptraj.F90:2710:7:

 2710 |   CONC(NODES,ZL) = CONC(NODES,ZL) + WEIGHTS / (DELTAZ + 1.0E-20)
      |       1
Warning: Legacy Extension: REAL array index at (1)
ptraj.F90:2710:24:

 2710 |   CONC(NODES,ZL) = CONC(NODES,ZL) + WEIGHTS / (DELTAZ + 1.0E-20)
      |                        1
Warning: Legacy Extension: REAL array index at (1)
ptraj.F90:1400:76:

 1400 |   CALL INTERP_KV(1,HOST(IP),PDXN(IP),PDYN(IP),PDZN(IP),KPZ,KPPZ,KHR1,KPP,DELZ)
      |                                                                1

Warning: Rank mismatch in argument ‘kp’ at (1) (rank-1 and scalar) [-Wargument-mismatch]
ptraj.F90:1428:95:

 1428 | (1,HOST(IP),PDXN(IP),PDYN(IP),PDZN(IP),HP(IP),EP(IP),KHSMTH1,DKHSP,KHR1,DKHR1)
      |                                                                   1

Warning: Rank mismatch in argument ‘khout’ at (1) (rank-1 and scalar) [-Wargument-mismatch]
f951: some warnings being treated as errors
make: *** [makefile:121: ptraj.o] Error 1

更新2

我添加了-ffixed-line-length-none标志,终端显示警告:

cc1: warning: unknown register name: line-length-none

我添加了-ffree-line-length-none标志,终端显示警告:

cc1: warning: command line option ‘-ffree-line-length-none’ is valid for Fortran but not for C 

相关内容