4

lapackを使用するプログラムをコンパイルしようとしています。

まず、次のリンクで「sudo apt-get install」を使用してすべてのパッケージをインストールすることにより、lapackをインストールしました: https ://launchpad.net/ubuntu/precise/+source/lapack

このページのコードをコンパイルしようとしています:http: //www.nag.com/lapack-ex/examples/source/dgbsv-ex.f

このプログラムは次のサイトから入手しました:http: //www.nag.com/lapack-ex/lapack-ex.html

次のように入力してプログラムをコンパイルしようとしました

$gfortran dbgsv-ex.f -llapack -lblas

ターミナルに

たくさんのエラーメッセージが表示されます。

/usr/lib/gcc/i686-linux-gnu/4.6/../../../../lib/liblapack.so: undefined reference to         
`ATL_strsv'

つまり、エラーメッセージはで終わりますATL_xxxx/usr/lib/ また、自分を見ると、というファイルが表示されていることにも注意してください。liblapack.so

4

1 に答える 1

1

他のコメントがすでに示しているように、システムにはLAPACKのATLAS実装があります。ライブラリリンクの正しい順序(スレッド化されていないバージョンのATLASの場合)は次のようになります。

-llapack -lf77blas -lcblas -latlas

また、FortranコードにはNAGライブラリ(x04cef)のルーチンも含まれているように見えるため、NAGライブラリもリンクする必要があることに注意してください。

于 2013-02-04T06:59:15.677 に答える