centos lapack安装(centos8安装图形界面)
linux关于blas、lapack的安装和使用
Linux系统下,若需进行高效且便捷的BLAS和LAPACK库安装与使用,推荐选用Intel的MKL库。本文将对MKL库的使用进行实例展示,并概述BLAS、LAPACK、CBLAS与LAPACKE库的安装与配置。
BLAS(Basic Linear Algebra Subprograms)提供基础矩阵与向量运算,而LAPACK(Linear Algebra Package)则具备更丰富的线性方程求解、二次规划、特征值分解等高级运算功能。为了在C语言中调用这些库,同时考虑在Python中调用C生成的动态库(.so文件),需要一并安装CBLAS与LAPACKE。
在Ubuntu与CentOS等Linux发行版上安装与配置BLAS、CBLAS、LAPACK与LAPACKE库,通常能实现顺利的编译与使用。确保库文件与头文件的正确路径,例如将其放置在/usr/local/lib与/usr/local/include目录下,或通过用户级别的~/.bashrc文件添加路径配置。
在进行库的链接与编译时,需注意库的链接顺序,这可能影响程序的正常运行。若遇到头文件或静态库未找到的问题,可参考上述路径配置或在编译时通过`-I`与`-L`参数指定路径。
对于Python调用C生成的动态库的需求,需对LAPACK的编译选项进行调整。通过修改~/lapack-3.10.1/make.inc文件,将相关设置增加`-fPIC`选项,进而重新编译生成BLASlib、CBLASlib、LAPACKlib与LAPACKelib。这一步骤能确保动态库的生成兼容Python环境。
如遇编译过程中出现错误,如“/usr/bin/ld: cannot find xxxx”的提示,这通常意味着库文件路径未正确添加。通过搜索与执行“编译-L”相关指令,可解决找不到库文件的问题。
总结而言,Linux环境下,通过正确安装与配置BLAS、CBLAS、LAPACK与LAPACKE库,结合Intel MKL库的使用实例,能高效地满足各类矩阵与线性代数运算需求。同时,本文提供的安装与使用指导,旨在简化这一过程,确保用户能快速上手并高效地在多种编程环境中应用这些关键库。
centos7怎么安装ShengBTe
安装好编译器和数学库MKL,并配置好环境(只有普通用户权限,用户名为xxx,安装在~/home/xxx/intel)
source/home/xxx/intel/bin/compilervars.sh intel64
source/home/xxx/intel/mkl/bin/mklvars.sh intel64
source/home/xxx/intel/impi/2018.0.128/bin64/mpivars.sh intel64
如果输入
mpiifort--version
能显示正确的信息,表明已安装好
到How to install spglib C-API下面下载spglib并按照该网页上的步骤安装,比如安装到了
/home/xxx/software/spglib
到下载ShengBTE,解压后将其中的arch.make.example复制为arch.make,更改为
export FFLAGS=-traceback-debug-O2-static_intel
export LDFLAGS=-L/home/xxx/software/spglib/lib-lsymspg
export MPIFC=mpiifort
MKL=$(MKLROOT)/lib/intel64/libmkl_lapack95_lp64.a-Wl,--start-group\
$(MKLROOT)/lib/intel64/libmkl_intel_lp64.a\
$(MKLROOT)/lib/intel64/libmkl_sequential.a\
$(MKLROOT)/lib/intel64/libmkl_core.a-Wl,--end-group-lpthread-lm
export LAPACK=$(MKL)
export LIBS=$(LAPACK)
记得要将spglib的位置更改,然后将该文件复制到Src文件夹中,make
没有出错的话就会得到ShengBTE,可以进入测试文件夹中测试一下,比如Test-VASP,执行
../ShengBTE
或者
mpirun-np 4../ShengBTE
楼主如果对Linux系统感兴趣,想学习更多Linux系统知识,可以百度《Linux就该这么学》,不错的一本Linux入门教程。