makefile에서 변수를 정의하려고 시도하고 해당 변수의 설정 여부에 따라 Fortran 루틴에서 컴파일되는 코드 블록을 변경하십시오. =makefile에서 변수를 정의한 다음 Fortran 코드 내에서 사용하는 방법
이MYVAR=1
all:
ifort temp.F90 -fpp
echo $(MYVAR)
라인이 올바르게 그러나 1. 인쇄, 테스트 프로그램이이를 설정 컴파일 할 때 :
program test
implicit none
integer :: a
#ifdef MYVAR
a = 1
#else
a = 0
#endif
write(*,*) a
end program test
내 메이크 파일은 다음과 같습니다
간단한 예를 나는 작업을 얻을 수 없다 0. MYVAR을 인식하도록 포트란 코드를 얻으려면 어떻게해야합니까? 당신은 그냥 정의 여부를 확인하기 때문에,
all:
ifort -DMYVAR=1 temp.F90 -fpp
echo $(MYVAR)
을 또는 :
좋아요! 나는 당신과 알렉산더의 조합을 사용했습니다. 빠른 답변 주셔서 감사합니다. –