Ubuntu14.04 科学计算包blas、lapack的安装及其使用
1、先从网上把lapack包下载下来,lapack包的下载路径:http://www.netlib.org/lapack/#_lapack_version_3_10_0_2【这里面下载的是lapack3.5版本的】【lapack包里已经包含了blas包了,无需重新下载】2、首先安装下gfortran编译器:sudo apt-get install gfortran3、解压lapack-3.5.0.
1、先从网上把lapack包下载下来,lapack包的下载路径:http://www.netlib.org/lapack/#_lapack_version_3_10_0_2
【这里面下载的是lapack3.5版本的】
【lapack包里已经包含了blas包了,无需重新下载】
2、首先安装下gfortran编译器:sudo apt-get install gfortran
3、解压lapack-3.5.0.tgz 压缩包
tar -zxvf lapack-3.5.0.tgz
4、cd进入解压后的目录lapack-3.5.0
在make之前,需要先创建一个make.inc文件,可以直接根据make.inc.example创建
cp make.inc.example make.inc
5、如果是使用Ubuntu+gfortran,则无须更改make.inc里的内容,否则需要根据系统环境和编译器修改文件里对应的选项。LAPACK依赖BLAS,因此在编译LAPACK前需要提供BLAS包,所幸LAPACK里已经集成了BLAS包,但默认并不编译它。要想编译LAPACK前先编译BLAS,需要修改一下makefile:
gedit Makefile
光标定位到第11行并将内容改为:
lib: blaslib lapacklib tmglib
保存退出,然后开始make整个工程。
6、make 编译完成
7、cd lapack目录下,再次进行make操作!~【重要】
8、两处都make成功后,会在目录lapack-3.5.0下生成 liblapack.a、liblapacke.a、librefblas.a、libtmglib.a 这个4个静态库文件
9、把这4个静态库文件,拷贝到/usr/local/lib/目录下:sudo cp *.a /usr/local/lib/
10、把lapack目录下的include里的头文件拷贝到/usr/local/include/目录下:
cd lapack/inclue
sudo cp *.h /usr/local/include/
cd -
11、至此lapack 和 blas已经安装好了!
12、测试lapack和blas包是否安装成功!~
测试代码(test.c)如下:
#include <stdio.h>
#include <lapacke.h>
int main (int argc, const char * argv[])
{
double a[5*3] = {1,2,3,4,5,1,3,5,2,4,1,4,2,5,3};
double b[5*2] = {-10,12,14,16,18,-3,14,12,16,16};
lapack_int info,m,n,lda,ldb,nrhs;
int i,j;
m = 5;
n = 3;
nrhs = 2;
lda = 5;
ldb = 5;
info = LAPACKE_dgels(LAPACK_COL_MAJOR,'N',m,n,nrhs,a,lda,b,ldb);
for(i=0;i<n;i++)
{
for(j=0;j<nrhs;j++)
{
printf("%lf ",b[i+ldb*j]);
}
printf("\n");
}
return(info);
}
编译test.c gcc test.c -o test -llapacke -llapack -lrefblas -lgfortran -lm -w
执行:./test
更多推荐
所有评论(0)