OS X 的 Fortran 編譯器安裝說明

OS X 的 Fortran 編譯器安裝說明

我嘗試為 Mac OSX El Captain 安裝 fortran 編譯器。首先;

我安裝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 將自動再次建置它。

我透過逐步發現這個安裝_f2c_osx.csh手動。

在src子目錄下make產生:

make ./xsum 注意自述檔案cds.c data.c Defines.h defs.h equal.c error.c exec.c expr.c f2c.1 f2c.1t f2c.h format.c format.h formatdata.c ftypes 。 mem .c memset.cmisc.cnames.cnames.hniceprintf.cniceprintf.houtput.coutput.hp1defs.hp1output.cparse.hparse_args.cpccdefs.hpread.cproc.cput.c putpcc.c sysdep.c dedeal. ussignal.h vax.c version.c xsum.c >xsum1.out
/bin/sh: ./xsum: 權限被拒絕
make: *** [xsum.out]錯誤126

這使得f2c 得以完成建設。

OS X 的 Fortran 編譯器安裝說明這部分f2c 翻譯器 / f77 編譯器

步驟3:

  1. 翻譯、編譯、連結和運行程序

$ 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。要讓這個有些過時的程式碼正常運作,一個好的第一步可能是消除警告(這是不言自明的)。

相關內容