網友評分: 4.2分
GFortran編譯器是一款非常好用的Fortran編譯器,它主要適用于程序的編譯和管理,擁有性能穩定,編譯速度快等特點,可以廣泛地應用于各類開發領域,適用于Win、Linux等操作系統,總體來說還是非常不錯的。
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默認的函數
標簽: GFortran Fortran編譯器