Mac OSX El Captain용 포트란 컴파일러를 설치해 보겠습니다. 첫째로;
install_f2c_osx.csh
설치 스크립트 실행 $ chmod +x install_f2c_osx.csh $ sudo ./install_f2c_osx.csh를 설치합니다.
다음과 같은 경고가 표시됩니다.
1 warning generated.
ld -r -x -o wsne.xxx wsne.o
mv wsne.xxx wsne.o
cc -c -DSkip_f2c_Undefs -O xwsne.c
ld -r -x -o xwsne.xxx xwsne.o
mv xwsne.xxx xwsne.o
cc -c -DSkip_f2c_Undefs -O dtime_.c
ld -r -x -o dtime_.xxx dtime_.o
mv dtime_.xxx dtime_.o
cc -c -DSkip_f2c_Undefs -O etime_.c
ld -r -x -o etime_.xxx etime_.o
mv etime_.xxx etime_.o
ar r libf2c.a f77vers.o i77vers.o main.o s_rnge.o abort_.o exit_.o getarg_.o iargc_.o getenv_.o signal_.o s_stop.o s_paus.o system_.o cabs.o ctype.o derf_.o derfc_.o erf_.o erfc_.o sig_die.o uninit.o pow_ci.o pow_dd.o pow_di.o pow_hh.o pow_ii.o pow_ri.o pow_zi.o pow_zz.o c_abs.o c_cos.o c_div.o c_exp.o c_log.o c_sin.o c_sqrt.o z_abs.o z_cos.o z_div.o z_exp.o z_log.o z_sin.o z_sqrt.o r_abs.o r_acos.o r_asin.o r_atan.o r_atn2.o r_cnjg.o r_cos.o r_cosh.o r_dim.o r_exp.o r_imag.o r_int.o r_lg10.o r_log.o r_mod.o r_nint.o r_sign.o r_sin.o r_sinh.o r_sqrt.o r_tan.o r_tanh.o d_abs.o d_acos.o d_asin.o d_atan.o d_atn2.o d_cnjg.o d_cos.o d_cosh.o d_dim.o d_exp.o d_imag.o d_int.o d_lg10.o d_log.o d_mod.o d_nint.o d_prod.o d_sign.o d_sin.o d_sinh.o d_sqrt.o d_tan.o d_tanh.o i_abs.o i_dim.o i_dnnt.o i_indx.o i_len.o i_mod.o i_nint.o i_sign.o lbitbits.o lbitshft.o h_abs.o h_dim.o h_dnnt.o h_indx.o h_len.o h_mod.o h_nint.o h_sign.o l_ge.o l_gt.o l_le.o l_lt.o hl_ge.o hl_gt.o hl_le.o hl_lt.o ef1asc_.o ef1cmc_.o f77_aloc.o s_cat.o s_cmp.o s_copy.o backspac.o close.o dfe.o dolio.o due.o endfile.o err.o fmt.o fmtlib.o ftell_.o iio.o ilnw.o inquire.o lread.o lwrite.o open.o rdfmt.o rewind.o rsfe.o rsli.o rsne.o sfe.o sue.o typesize.o uio.o util.o wref.o wrtfmt.o wsfe.o wsle.o wsne.o xwsne.o dtime_.o etime_.o
ar: creating archive libf2c.a
ranlib libf2c.a
./xsum Notice README cds.c data.c defines.h defs.h equiv.c error.c exec.c expr.c f2c.1 f2c.1t f2c.h format.c format.h formatdata.c ftypes.h gram.c gram.dcl gram.exec gram.expr gram.head gram.io init.c intr.c io.c iob.h lex.c machdefs.h main.c makefile.u makefile.vc malloc.c mem.c memset.c misc.c names.c names.h niceprintf.c niceprintf.h output.c output.h p1defs.h p1output.c parse.h parse_args.c pccdefs.h pread.c proc.c put.c putpcc.c sysdep.c sysdep.h sysdeptest.c tokens usignal.h vax.c version.c xsum.c >xsum1.out
/bin/sh: ./xsum: Permission denied
make: *** [xsum.out] Error 126
cp: f2c: No such file or directory
문제를 해결하기 위해 어떤 조언을 해주시나요? 감사합니다
답변1
잘못된 아키텍처에 대한 실행 파일인 src/xsum을 제거해야 합니다. Makefile은 자동으로 다시 빌드합니다.
지나가다가 이걸 발견했어요install_f2c_osx.csh수동으로.
src 하위 디렉터리에서 make가 생성되었습니다:
make ./xsum 주의 사항 README cds.c data.c Defines.h defs.h Equiv.c error.c exec.c expr.c f2c.1 f2c.1t f2c.h format.c format.h formatdata.c ftypes. h gram.c gram.dcl gram.exec gram.expr gram.head gram.io init.c intr.c io.c iob.h lex.c machdefs.h main.c makefile.u makefile.vc malloc.c mem .c memset.c misc.c names.c names.h niceprintf.c niceprintf.houtput.coutput.h p1defs.h p1output.cparse.hparse_args.c pccdefs.h pread.c proc.c put.c putpcc.c sysdep.c sysdep.h sysdeptest.c 토큰 usignal.h vax.c version.c xsum.c >xsum1.out
/bin/sh: ./xsum: 권한이 거부되었습니다
make: *** [xsum.out] 오류 126
이를 통해 f2c는 건물을 완성할 수 있었습니다.
보다OS X용 포트란 컴파일러 설치 지침그 부분f2c 번역기 / f77 컴파일러
3단계:
- 프로그램 번역, 컴파일, 링크 및 실행
$ f2c hello.f
$ gcc -c hello.c
$ gcc -o hello hello.o -lf2c -lm
$ ./hello
다음을 생성하는 첫 번째 단계에서 실패했습니다.
src/f2c hello.f
hello.f:
hello.f의 라인 1 오류: 잘못된 연속 카드("progra" 시작)
hello.f의 라인 2 오류: 명령문 레이블 필드 "print"의 숫자가 아닌 숫자
의 라인 3 오류 hello.f: 레이블이 붙은 연속 라인("end pr" 시작)
hello.f의 라인 2 오류: 분류할 수 없는 문("*," 시작)
src 하위 디렉토리에는 libf2c.a라는 소수의 건물로 수많은 경고 건물이 있었습니다. 다소 오래된 코드를 작동시키기 위한 좋은 첫 번째 단계는 경고(설명이 필요함)를 제거하는 것입니다.