linux编译lapack,blas、lapack、cblas在Ubuntu上的安装

linux编译lapack,blas、lapack、cblas在Ubuntu上的安装这是整合借鉴几篇别人的文章,但是做了一点修改。(最初是谁的,忘记了)1.确保机器上安装了gfortran编译器,如果没有安装的话,可以使用sudoapt-getinstallgfortran2.下载blas,cblas,lapack源代码3.这里就是具体的编译步骤(一定要按照顺序)tarxvfblas.tgz#解压三个文件1)编译blas进入BLAS文件夹,执行以下几条命令gf…

大家好,欢迎来到IT知识分享网。linux编译lapack,blas、lapack、cblas在Ubuntu上的安装

这是整合借鉴几篇别人的文章,但是做了一点修改。(最初是谁的,忘记了)

1.确保机器上安装了gfortran编译器,如果没有安装的话,可以使用

sudo apt-get install gfortran

2.下载blas, cblas, lapack 源代码

3.这里就是具体的编译步骤(一定要按照顺序)

tar xvf blas.tgz #解压三个文件

1)编译blas

进入BLAS文件夹,执行以下几条命令

gfortran -c -O3 *.f # 编译所有的 .f 文件,生成 .o文件

ar rv libblas.a *.o # 链接所有的 .o文件,生成 .a 文件

su cp libblas.a /usr/local/lib # 将库文件复制到系统库目录

##################################################################

#如果上面代码有问题,可以试试下面的编译方法

gfortran -c -O3 -fPIC *.f # 编译所有的 .f 文件,生成 .o文件 加上了-fPIC

gcc -shared *.o -fPIC -o libblas.so

cp libblas.so /usr/local/lib/

ar rv libblas.a *.o # 链接所有的 .o文件,生成 .a 文件

su cp libblas.a /usr/local/lib # 将库文件复制到系统库目录

2)编译cblas

进入CBLAS文件夹,首先根据你自己的计算机平台,将目录下某个 Makefile.XXX 复制为 Makefile.in , XXX表示计算机的平台,如果是Linux,那么就将Makefile.LINUX 复制为 Makefile.in,然后执行以下命令

cp ../BLAS/libblas.a testing # 将上一步编译成功的 libblas.a 复制到 CBLAS目录下的testing子目录

make # 编译所有的目录

sudo cp lib/cblas_LINUX.a /usr/local/lib/libcblas.a # 将库文件复制到系统库目录下

问题:

File “./lapack_testing.py”,line 17

**except getopt.error, msg:

^**

syntaxError:invalid syntax

Make:***[lapack_testing] Error 1

#注意,这里可能有`一个关于python的保存,主要原因是我们现在使用的是python3,

#但是编译使用的是python2,我们需要把这个文件第一行修改为在python2环境下执行。

#第一行最后加一个2就可以。

3)编译 lapack以及lapacke

这一步比较麻烦,首先当然是进入lapack-3.4.2文件夹,然后根据平台的特点,将INSTALL目录下对应的make.inc.XXX 复制一份到 lapack-3.4.2目录下,并命名为make.inc, 这里我复制的是 INSTALL/make.inc.gfortran,因为我这里用的是gfortran编译器。

修改lapack-3.4.2/Makefile, 因为lapack以来于blas库,所以需要做如下修改

#修改~!

#lib: lapacklib tmglib

lib: blaslib variants lapacklig tmglib

修改make.inc 文件

BLASLIB = /usr/local/lib/libblas.a

CBLASLIB = /usr/local/lib/libcblas.a

LAPACKLIB = liblapack.a

TMGLIB = libtmglib.a

LAPACKELIB = liblapacke.a

主要是设定好对应的blas和cblas目标文件的链接路径(在系统库目录下的)。接下来运行代码:

make # 编译所有的lapack文件

cd lapacke # 进入lapacke 文件夹,这个文件夹包含lapack的C语言接口文件

make # 编译lapacke

cp include/*.h /usr/local/include #将lapacke的头文件复制到系统头文件目录

cd .. #返回到 lapack-3.4.2 目录

cp *.a /usr/local/lib # 将生成的所有库文件复制到系统库目录

这里的头文件包括: lapacke.h, lapacke_config.h, lapacke_mangling.h, lapacke_mangling_with_flags.h lapacke_utils.h

生成的库文件包括:liblapack.a, liblapacke.a, librefblas.a, libtmglib.a

至此cblas和lapack就成功安装到你的电脑上了。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/15522.html

(0)
上一篇 2024-02-16 19:15
下一篇 2024-02-17 13:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信