ShengBTE软件安装(自存)
环境:Ubuntu 20.04 LTS, Python 3.9.16, GCC 9.4.0, intel编译器oneAPI
注:thirdorder安装可能需要Python和gcc版本降级,影响已安装软件(参考:thirdorder安装报错:error: command ‘/usr/bin/gcc‘ failed_DFT计算杂谈的博客-CSDN博客),考虑拷贝已经编译好的来使用,或者在已正常安装的机器进行数据处理
经测试,可将thirdorder文件夹整体拷贝来使用,使用前将每个文件右键→属性→权限→勾选“允许执行文件”,需要的话可进一步把文件夹目录添加至环境变量
安装spglib库(手动,其他如pip3等方法会缺少完整的文件和库)
参考官网教程:How to install spglib C-API — Spglib v.2.1.0rc2
% sudo apt-get install git
% git clone https://github.com/spglib/spglib.git # 在目标的安装路径下进行
注:git自动下载的最新2.1.0版本在cmake安装时会出现“No patch step for 'gtest-populate'”等报错
解决办法:https://github.com/spglib/spglib/archive/master.zip 安装2.0.0版本
解压至目标安装路径,重命名文件夹spglib
% cd spglib
% mkdir _build
% cd _build
% cmake -DCMAKE_INSTALL_PREFIX=.. .. # 安装在上一级spglib文件夹
% cmake --build .
% cmake --install . --prefix ..
安装完毕
添加环境变量:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/${spglib安装路径}/lib:/${spglib安装路径}/src # lib中含libsymspg.a或libsymspg.so等文件,src中含spglib.h等文件
安装ShengBTE
下载安装包:ShengBTE - Downloads (翻墙) sousaw / shengbte — Bitbucket (无需翻墙)
解压ShengBTE-v1.x.x-xxx.tar.bz至目标路径,按照README.md步骤安装,也可参考:
ShengBTE简单介绍、安装与使用_shengbte安装_DFT计算杂谈的博客-CSDN博客
% cd ShengBTE
% cd Src
% cp ../arch.make.example arch.make
修改arch.make各路径:
export FFLAGS=-traceback -debug -O2 -static-intel -qopenmp
(原arch.make.example中-static_intel需要改为-static-intel)
export LDFLAGS=-L/${spglib安装路径}/lib
export MPIFC=mpiifort
MKL=/opt/intel/oneapi/mkl/20xx.x.x/lib/intel64/libmkl_lapack95_lp64.a
/opt/intel/oneapi/mkl/20xx.x.x/lib/intel64/libmkl_intel_lp64.a
/opt/intel/oneapi/mkl/20xx.x.x/lib/intel64/libmkl_sequential.a
/opt/intel/oneapi/mkl/20xx.x.x/lib/intel64/libmkl_core.a
保存arch.make文件
在Src目录下安装:
% make
安装完毕,检查ShengBTE文件夹的可执行文件ShengBTE.x
添加环境变量:export PATH=$PATH:/home/simple/Cal/ShengBTE