我试图在 makefile 中定义一个变量,然后根据是否设置了该变量,更改在我的 Fortran 例程中编译的代码块。
简单的例子我无法工作:
program test
implicit none
integer :: a
#ifdef MYVAR
a = 1
#else
a = 0
#endif
write(*,*) a
end program test
我的生成文件是:
MYVAR=1
all:
ifort temp.F90 -fpp
echo $(MYVAR)
The echo $(MYVAR)
行正确地打印 1。但是,当编译测试程序时,它设置 a=0。如何获取 Fortran 代码来识别 MYVAR?
您需要添加一个额外的标志
OPTIONS = -DMYVAR=$(MYVAR)
然后你用它编译它
all:
ifort $(OPTIONS) <file.f90> -fpp
你应该可以走了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)