fortran 실행관련 질문
fortran으로 짜여진 geant321라는 프로그램의 example을 실행하려고 합니다
소스코드는 아래 경로에 있는 것들과 동일한 내용입니다
http://cernlib.web.cern.ch/cernlib/download/2006_source/src/geant321/examples/gexam1/
관련 라이브러리 (cernlib)도 제대로 설치된것 같아서 직접 실행해 보려고 했습니다
g77 gukine.F guout.F gustep.F gutrev.F incdek.F main.F ufiles.F ugeom.F uginit.F uglast.F uhinit.F -o simple -L/usr/X11R6/lib -I/usr/include/cernlib/2006 -lX11 -lcrypt -llapack -lgeant321 -lpawlib -lgraflib -lgrafX11 -lpacklib
그랬더니 아래와 같은 에러가 발생했습니다....
ufiles.F: In subroutine `ufiles':
ufiles.F:28:
CHARACTER*(*) FILNAM, FSTAT
1
ufiles.F:48: (continued):
OPEN(UNIT=4,FILE=FILNAM,STATUS=FSTAT,FORM='FORMATTED')
2
Invalid declaration of or reference to symbol `filnam' at (2) [initially seen at (1)]
ufiles.F:28:
CHARACTER*(*) FILNAM, FSTAT
1
ufiles.F:48: (continued):
OPEN(UNIT=4,FILE=FILNAM,STATUS=FSTAT,FORM='FORMATTED')
2
Invalid declaration of or reference to symbol `fstat' at (2) [initially seen at (1)]
uglast.F: In subroutine `uglast':
uglast.F:32:
CHARACTER*(*) FILNAM, FSTAT
1
uglast.F:129: (continued):
OPEN(UNIT=99,FILE=FILNAM,STATUS=FSTAT,FORM='FORMATTED')
2
Invalid declaration of or reference to symbol `filnam' at (2) [initially seen at (1)]
uglast.F:32:
CHARACTER*(*) FILNAM, FSTAT
1
uglast.F:129: (continued):
OPEN(UNIT=99,FILE=FILNAM,STATUS=FSTAT,FORM='FORMATTED')
무엇이 잘못된 걸까요??
그리고 해당 디렉토리에 Imakefile이 있는데 이건 어떻게 활용해야하는 건가요? imake_boot(http://cernlib.web.cern.ch/cernlib/download/2006_source/src/config/)를 실행했는데도 makefile이 안생기는거면 제가 빌드를 잘못한걸까요?
그리고 포트란77버전 강좌 제대로 나온곳좀 아시면 알려주십쇼 ㅠㅠ 너무 옛날거라...
전처리용 상수 정의가 필요할 듯 보입니다.
imake를 이용해 보세요. x window 빌드용 make툴로 알고 있습니다.(사용해본 적은 없네요.)
원인은 전처리용 매크로 상수가 정의되어 있지 않기 때문일 겁니다.
저렇게 커맨드라인에서 한 줄씩 컴파일 하려면, -D로 일일이 해줘야 합니다.
코드는 대충봐서 정확한 답변은 아닐 가능성이 많습니다.
!23456---1----+----2----+----3----+----4----+----5----+----6----+----7-2--+----8
"배웠다"는 "할 수 있다"의 동의어가 아니다.
추가로..
인클루드 될 파일의 경로도 정확한지 파악하시고요.
!23456---1----+----2----+----3----+----4----+----5----+----6----+----7-2--+----8
"배웠다"는 "할 수 있다"의 동의어가 아니다.
댓글 달기