2012-01-10 16 views
2

Linux gccにLAPACKをセットアップするには、助けが必要です。私はLAPACKには新しく、Fortranを使用する知識はありません。gcc起動ガイド付きLAPACK

私はlapack-3.4.0をダウンロードし、ライブラリを liblapack.aとlibrefblas.aにするようにしました。その後

、私は私のプログラムにこれらのライブラリをリンク: -llapack -lrefblas

私はdgetriなどdpotrf、DGETRF、などのLAPACK関数を使用したい、 私は私のためにヘッダファイルをインクルードするにはどうすればよいですコンパイラは関数を見つけるために? LAPACKのCインターフェイスであるlapackeを使用する必要がありますか?

答えて

0

LAPACKをC++で使用する方法はいくつかあります。ここで私は何をしようとしているか(あなたが* nixシステムにいると仮定して)。

  1. 正しいライブラリがあり、適切なコンパイラ/リンカオプションがわかっていることを確認してください。これらはFortranで書かれているので、私はFortranコードから始めます。 this oneのように。 gfortranを使用してコンパイルできることを確認してください。使用可能なリンカーオプションは、システムによって異なります(-llapack-lblasまたはこれらの組み合わせが可能)。

  2. 次に、C++インターフェイスを使用して移動します。繰り返しますが、複数の方法があります。

extern "C" void dsyev_(char *jobz, char *uplo, int &n, double *a, int &lda, double *w, double *work, int &lwork, int &info);

リンカオプションの右のセットが再びお使いのシステムに依存しており、のようなものにすることができます:私は個人的にあなたがこのようなLAPACK関数を宣言しているCLAPACKインタフェースを、使用するのが最も簡単に見つけますこれは-llapack -lf77blas -latlasです(このセットはLAPACKがatlasパッケージから来た私のUbuntuで動作します)。

関連する問題