Gfortran 使用说明.docx

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Gfortran 使用说明.docx

1、source中未使用外部库链接的,直接执行: gfortran foo.f/f90 -o foo ./foo 如没有-o选项,生成a.out文件,这显然不是我想要的。:D 2、gFortran分两部分:compiler and library。如果gFortran不是标准安装的,编译source后执行,可能找不到lib,这时可以加入-static选项: gfortran -static foo.f/f90 -o foo gFortran会将库建在所生成程序内部。 3、FortranSource有77和90两种书写格式,gFortran默认根据后缀进行compile。如果想自定义,例如foo.f是用90格式写的,可执行: gfortran -ffree-form foo.f -o foo 大写的后缀名,gFortran会预执行该程序。 4、多source文件时,先compile不含PROGRAM语句段的source文件,各自生成foo1.o,foo2.o等。再一起编译。例如: gfortran -c foo1.f/f90 gfortran -c foo2.f/f90 gfortran main.f/f90 foo1.o foo2.o -o main 5、foo.f95的,加选项-std=f95,.f2003的,目前支持尚不完整。顺便说,gFortran unstable版4.3.x将支持pointer。 下面还有一些可能常用到的options。 -fbounds-check:检查列表序列脚标是否超出 -ffree/ffix-line-length-n:设置最大columns。77默认:72;90默认:132。n若设为0或none,则不限有效行数 -fimplicit-none:等同于在f90每段sub中声明IMPLICIT NONE,且source中implicit语句优先 -fmax-error-n:意义如词义 -fsyntax-only:不编译,只检查语法 -fexternal-blas:使用BLAS库函数,替代gFortran默认的函数 主题:关于Fortran编译器的选择 作者: HYPERLINK /member.asp?name=jason388 jason388 发表时间:2007-12-30 10:51:00 楼主 在几个Fortran论坛中都看到有很多人在求助编译器的问题,在此发表一下我的看法。 1.开发商业软件者,建议购买正版的Fortan编译器,比如Intel、IBM或其他公司的产品,因为无论在运行速度还是对新标准的支持上,这些大公司的产品都走在了前面。如IBM的产品,基本上做到了对2003标准的完全支持。 2.对于非商业软件开发,建议采用开源软件,如GFortran,G95。这些软件目前已经完全支持Fortran95,且部分支持Fortran2003。由于两者都属于GCC系列,因此与其他语言混合编程也非常方便。除此之外,GFortran通过GCC对OpenMP的支持,也支持并行编程。当然由于他们都是跨平台的,因此具有很好的可移植性,也方便对已有资源的利用。 3.如果采用GFortran或G95这样的命令行编译器,建议采用SciTE或CodeBlocks作为编辑器,这两款编辑器即开源,同时也都内建了对Fortran的支持,且通过简单的设置即可直接调用GFortran或G95。 4.当然对于个人用户,Ftn95也是一个很好的选择。  作者: HYPERLINK /member.asp?name=f2003 f2003 发表时间:2007-12-30 13:06:00  第1楼 有时需要在速度与兼容性(跨操作系统兼容性与库的兼容性)之间取舍。 intel等商业编译器只能针对glibc的某些版本,有的也调用gcc的库,如intel fortran就调用了libstdc++。从而有兼容问题。gfortran就没有这些问题了,因为是调用你的系统的库定制编译的。 兼容性好的速度就慢,gcc要照顾几十种cpu和OS,intel fortran只满足x86/ia64两种cpu和win/linux/macOS三种操作系统,术业有专攻,集中了精力,从而提供了更好的性能。很多时候,intel fortran编译的程序的速度都能达到gfortran两倍。  作者: HYPERLINK /member.asp?name=jason388 jason388 发表时间:2007-12-31 8:23:00  第2楼 关于GFortran运行速度可以参考 /wiki/GFortranResults。 确实在选择编译器时应该在速度和可移植性方面进行取舍。 如果偶尔使用Fortr

文档评论(0)

dmz158 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档