[问题] 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