[問題] ifort 與 gfortran flag 轉換

作者: zmack0905 (降太)   2015-07-08 17:22:08
因為離開學校環境,沒有ifort可以用了,但是要跑的模式
makefile選項只有pgf跟ifort可以選
嘗試去修改ifort flag
由原本
FLGS = $(INCLUDES) -mcmodel=medium -O2 -mieee-fp -align dcommons
-extend_source -convert big_endian
MODULES=-I${MOD_DIR} -module ${MOD_DIR}
改為
FLGS = $(INCLUDES) -mcmodel=medium -O -mieee-fp -falign-commons
-extend_source -fconvert=big-endian -ffree-form
MODULES=-I${MOD_DIR} -fintrinsic-modules-path ${MOD_DIR}
下指令
make COMPILER=gfortran
卻在第一行表示錯誤
c*** BNDARY
1
Error: Unclassifiable statement at (1)
Mod_src/bndary.f:2:
c
1
Error: Unclassifiable statement at (1)
bndary.inc:1:
Included at Mod_src/bndary.f:4:
想請問是不是我有哪個部分沒轉換好,或者這是註定好就是要買ifort QQ
另外我是在做camx,其中的makefile的修改
http://goo.gl/3kfNuS
作者: kerwinhui (kezza)   2015-07-09 02:33:00
你這個是fixed form,不是free form把 FLGS 的 -ffree-form 拿掉gfortran中.f預設是free form,所以應該要-ffixed-form
作者: zmack0905 (降太)   2015-07-09 09:26:00
很感謝,編譯上順多了,一開始會認為是FREE是因為很多行都超過72字,結果現在用fix都要自己去改請問是因為ifort跟pgf可以自己去抓這些錯然後讀進去還是我的FLAGS依然沒寫好?剛剛爬資料又想到一個可能,會不會因為c註解是fix的格式所以用FREE去寫會認為是錯誤,但I跟P可以忽略這問題?
作者: kerwinhui (kezza)   2015-07-09 21:38:00
extend_source好像只是從72變成132吧,還是fixed-formi好像.f會默認fixed form,和g不一樣
作者: jubilee2 (3321)   2015-07-11 18:17:00
自己用的話IFORT LIUNX版是免費的
作者: zmack0905 (降太)   2015-07-11 20:43:00
很不幸的現在沒有免費了,四個身分都不合

Links booklink

Contact Us: admin [ a t ] ucptt.com