1

次のような単純な Fortran プログラムをコンパイルしようとしていますsandbox.for

program sandbox
    implicit none
    integer, parameter :: dp = kind(1.0d0)
    real(dp), dimension(2, 2) :: a
    integer :: i

    a = reshape([1, 2, 1, 2], shape(a))
    do i=1,2
        print *, a(i, :)
    end do

end program sandbox

を使用してプログラムをコンパイルしようとしましたgfortran -ffree-form -o sandbox sandbox.forが、次のエラーが発生します。

/tmp/ccylnLGH.o: In function `MAIN__': sandbox.for:(.text+0x1b):
undefined reference to `_gfortran_set_std' collect2: ld returned 1
exit status

これは gcc の古いバージョンに関連している可能性があるという古い投稿を見つけました。CentOS 5.9 Final で gfortran/gcc 4.1.2 を実行しています。メーリング ポストでは、新しいバージョンの gcc をコンパイルしてインストールすることを提案していますが、システムのルート権限がないため、新しいソフトウェアをインストールできません。このシステム (稼働中のサーバー) では、gfortran がリポジトリからインストールされ、最新の状態に保たれていると思います。

このエラーは、使用している gcc と gfortran のバージョンに関連していますか、それとも別の問題がありますか?

より詳しい情報

の出力は次のyum list | grep libgfortranとおりです。

libgfortran.i386                   4.1.2-54.el5            installed
libgfortran.x86_64                 4.1.2-54.el5            installed
libgfortran44.i386                 4.4.7-1.el5             base     
libgfortran44.x86_64               4.4.7-1.el5             base
4

0 に答える 0