文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>在Linux环境下Lapack软件包的编译和使用[转载]

在Linux环境下Lapack软件包的编译和使用[转载]

时间:2011-03-03  来源:Joseph Pan

1. 从 netlab 下载最新版本的源代码

http://www.netlib.org/lapack/lapack-3.1.0.tgz

2. 将源代码解压缩

tar -zxf lapack-3.1.0.tgz

3. 编辑 make.inc 文件,进行一些系统相关的编译参数设置

PLAT : 设置生成的库函数的后缀,比如 SUN, LINUX之类的,当然也可以不设置;

FORTRAN : 设置编译器,比如 g77, gfortran, ifort, g95 等等;

OPT:设置编译选项,根据具体的编译器和优化要求进行设置;

LOADER : 设置成和FORTRAN 一样就可以了;

4. 编辑 Makefile

找到 lib: 选项。然后设置需要编译的库函数如下

#lib: lapacklib tmglib

lib: blaslib lapacklib tmglib

默认的情况是不编译 blas 库的。

5. 编译和测试 Lapack.

在源代码的根目录下输入 make 回车。然后 make 程序就会自动进行编译和测试。 

6. Lapack 函数的使用

如果编译和测试顺利的话会在源代码的根目录下生成三个文件 lapack.a、blas.a、tmglib.a。lapack.a 和 blas.a 就是我们所需要的库函数。它们的使用有两种途径:

a) cp lapack.a liblapack.a , cp blas.a libblas.a 并拷贝到 LD_LIBRARY_PATH 目录下,或者它们所在的目录加入到 LD_LIBRARY_PATH 环境变量中,或者在编译时候加上 “-L lapack所在目录/” 选项。编译的时候加上编译选项 -llapack -lblas。

b) 编译的时候直接把 lapack.a 和 blas.a 一起同需要编译的代码一起编译。比如 要编译的文件为 main.f90 编译器为 gfortran 。 gfortran main.f90 lapack.a blas.a。

当然也可以将 Lapack 做成动态链接库文件的形式来使用。当然,在 linux 系统下也可以直接安装编译好的文件比如 redhat 、suse 安装 rpm 格式的文件,在 ubuntu 和 debian 系统下,安装 deb 格式的文件。但是最好还是根据自己的环境自己编译库函数,这样速度会快一些。我曾在 ubuntu 下做过实验一般情况下速度关系为,自己编译的库函数 > 编译好的库函数 > 调用 matlab 函数。

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载