【问题标题】:LAPACK with gcc startup guideLAPACK 与 gcc 启动指南
【发布时间】:2012-01-10 02:01:27
【问题描述】:

我需要帮助在 Linux gcc 中设置 LAPACK。我是 LAPACK 新手,不知道如何使用 Fortran。

我已经下载了lapack-3.4.0,并制作了这些库来获取 liblapack.a 和 librefblas.a。

之后,我将这些库链接到我的程序: -llapack -lrefblas

我想使用 LAPACK 函数,如 dpotrf、dgetrf、dgetri 等, 如何包含头文件以便我的编译器找到函数?我有必要使用 lapacke,LAPACK 的 C 接口吗?

【问题讨论】:

    标签: gcc lapack


    【解决方案1】:

    在 c++ 中使用 LAPACK 有多种方法。这就是我要做的(假设你在一些 *nix 系统上)。

    1. 确保您拥有正确的库并且您知道正确的编译器/链接器选项集。由于这些是用 Fortran 编写的,我将从 Fortran 代码开始。喜欢this one。确保您可以使用gfortran 编译它。可能的链接器选项可以是(取决于您的系统):-llapack-lblas 或这些的某些组合。

    2. 然后继续使用 C++ 接口。同样,有多种做法。我个人认为使用 clapack 接口是最简单的,您可以在其中声明 LAPACK 函数,如下所示:

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

    正确的链接器选项集再次取决于您的系统,可以是这样的:-llapack -lf77blas -latlas(这组适用于我的 Ubuntu,其中 LAPACK 来自 atlas 包)。

    【讨论】:

      猜你喜欢
      • 2012-03-09
      • 1970-01-01
      • 2012-05-22
      • 1970-01-01
      • 1970-01-01
      • 2011-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多