Installation of Psi4 and Forte in Windows WSL2
在 Windows 11 WSL2 中安装 Psi4 和 Forte(2024年9月)
一、更新Ubuntu软件包
1. 启动Windows WSL,在cmd中输入 wsl
2. 进入Ubuntu root模式
sudo -i
3. 如果没有“魔法”,建议更换国内Ubuntu镜像源,例如清华镜像源
1)备份原软件源配置文件(/etc/apt/sources.list),如
cp /etc/apt/sources.list /etc/apt/sources.list.backup
2)进入清华大学开源软件镜像站 | Tsinghua Open Source Mirror
3)点击ubuntu右边的问号,选择与WSL2安装对应的Ubuntu版本
4)复制相关内容,覆盖原软件源配置文件
4. 更新软件包
apt update
apt upgrade
apt autoremove
5. 获取开发者工具
apt install build-essential gfortran
6. 安装spf13-vim工具(非必要)
curl https://j.mp/spf13-vim3 -L > spf13-vim.sh && sh spf13-vim.sh
二、安装CUDA Toolkit(非必要,需在Windows中先安装NVIDIA驱动)
1. 进入CUDA Toolkit 12.6 Update 1 Downloads | NVIDIA Developer
2. 选择合适的系统及安装模式,并根据提示执行相关命令,完成安装,如:选择Linux, x86_64, WSL-Ubuntu, 2.0, deb(network),执行下列命令
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-6
3. 检查安装成功与否,执行nvidia-smi后应出现显卡信息,同时出现/opt/nvidia文件夹
三、安装Intel数学库和编译器(非必要)
1. 进入Download the Intel® oneAPI Base Toolkit
2. 选择适合的操作系统和安装模式,根据提示完成安装,如:选择Linux, APT,初次安装需执行以下命令
sudo apt update
sudo apt install -y gpg-agent wget
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg –dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
echo “deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main” | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo apt update
sudo apt install intel-basekit
sudo apt install intel-hpckit
3. 安装成功后应出现/opt/intel/oneapi文件夹
4. 将Intel库添加到环境变量
source /opt/intel/oneapi/setvars.sh
5. 将4中的命令加入到~/.bashrc中,实现启动WSL2时自动加载Intel环境
. /opt/intel/oneapi/setvars.sh
四、针对Psi4和Forte配置Python环境
1. 安装Miniconda
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
2. 将conda-forge频道添加至默认搜索频道(没有“魔法”请自行搜索并添加国内镜像源),打开或创建~/.condarc,输入
channels:
– conda-forge
– defaults
3. 创建forte.yml文件,输入以下内容:
name: forte
dependencies:
– python=3.12
– pip
– cmake
– clang-format
– numpy
– scipy
– boost
– hdf5
– yaml
– jupyter
– eigen
– pytest
– pydantic
– pint
– pybind11
– pyyaml
– pythreejs
– libint
4. 创建conda环境
conda env create -f forte.yml
5. 启用环境,并添加至~/.bashrc中
conda activate forte
6. 请在启用forte环境的情况下继续下面步骤
五、安装Psi4和Forte(非开发者)
直接从conda安装Forte
conda install conda-forge::forte
对于开发者,可参考以下步骤手动编译Forte。建议创建一个专门存储软件的文件夹,如在~/src/下继续之后步骤。
六、安装Ambit
1. 获取源代码
git clone https://github.com/jturney/ambit.git
如没有“魔法”,可在repo前添加ghproxy代理
git clone https://ghp.ci/https://github.com/jturney/ambit.git
2. 用CMake生成构建文件Makefile,请使用适合的编译器(这里我采用Intel编译器),将CMAKE_INSTALL_PREFIX更改成你希望的Ambit安装路径
cd ambit
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/src/ambit-install -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icpx
3. 编译Ambit,-j后的数字为并行核
make -j 20
编译遇到错误时,执行make VERBOSE=1,并研究其报错内容,尝试网上搜索解决方案
4. 安装Ambit
make install
5. 在~/.bashrc中添加环境变量创建conda环境(注意更改对应路径)
export PYTHONPATH=$HOME/src/ambit-install/lib:$PYTHONPATH
export AMBITPATH=$HOME/src/ambit-install
七、安装Block2-preview(非必要,DMRG计算需要)
参考block2-preview手册:DMRGSCF (Forte) — block2 documentation
1. 获取源代码
git clone https://github.com/block-hczhai/block2-preview.git
2. 生成构建文件
cd block2-preview && mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/$HOME/src/block2-install -DUSE_MKL=ON -DBUILD_CLIB=ON -DLARGE_BOND=ON -DMPI=OFF -DCMAKE_C_COMPILER=/opt/intel/oneapi/compiler/2024.2/bin/icx -DCMAKE_CXX_COMPILER=/opt/intel/oneapi/compiler/2024.2/bin/icpx
3. 编译并安装,注意使用Intel编译器时可能会遇到错误icpx: error: Use of ‘-qopenmp’ recommended over ‘-fopenmp’ [-Werror,-Wrecommended-option],这时可将block2-preview的CMakeLists.txt中的–fopenmp改为-qopenmp
make -j 20 && make install
八、安装Psi4
1. 从conda安装外部依赖
conda install libxc libecpint dkh gau2grid qcelemental qcengine optking
2. 获取源代码
git clone https://github.com/psi4/psi4.git
3. 生成构建文件
cd psi4 && mkdir build && mkdir build
cmake .. -DCMAKE_INSTALL_PREFIX=/home/york/src/psi4-install -DENABLE_dkh=ON -DENABLE_ambit=ON -DENABLE_ecpint=ON -DMAX_AM_ERI=8 -Dpsi4_CXX_STANDARD=20 -DCMAKE_CXX_STANDARD=20 -Dambit_DIR=$HOME/src/ambit-install/share/cmake/ambit -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icpx -DCMAKE_Fortran_COMPILER=gfortran
4. 编译并安装Psi4
make -j 20
make install
5. 如果在4中遇到错误fatal error: ‘eigen3/Eigen/Core’ file not found,可以用apt再安装一个eigen(sudo apt install libeigen3-dev)。重新cmake,并指定Eigen3_DIR,如-DEigen3_DIR=/usr/share/eigen3/cmake,其中/usr/share/eigen3/cmake路径下应包含cmake config文件(Eigen3Config.cmake等)。注意重新cmake时应首先删除CMakeCache.txt和CMakeFiles
6. 设置环境变量(参考Compiling and Installing from Source (psicode.org)),在~/.bashrc中输入以下内容(请替换对应路径)
PSI4OBJ=$HOME/src/psi4/build
PSI4INS=$HOME/src/psi4-install
export PSIPATH=$HOME/src/psi4-basis
export PSIDATADIR=$PSI4INS/share/psi4
export PSI_SCRATCH=/tmp/scratch/psi4
export PYTHONPATH=$PSI4OBJ/stage/lib:$PYTHONPATH
export PATH=$PSI4OBJ/stage/bin:$PATH
7. 测试Psi4能够正常运行,这里进测试一个例子
cd $HOME/src/psi4/tests/scf1
psi4
九、安装Forte
1. 获取源代码
git clone https://github.com/evangelistalab/forte.git
cd forte
2. 编译方法一
1)创建setup.cfg文件,输入以下内容(请替换ambitpath和CMAKE_PREFIX_PATH中$HOME为完整路径,不需要DMRG计算请删除block2相关的选项)
[CMakeBuild]
ambitpath=$HOME/src/ambit-install
cmake_config_options=-DCMAKE_BUILD_TYPE=Debug -DENABLE_block2=ON -DCMAKE_PREFIX_PATH=$HOME/src/block2-install/share/cmake/block2
2)执行命令:python setup.py develop
3. 编译方法二
1)创建compile-forte.sh文件,输入以下内容(请替换相关路径)
#! /bin/bash
# Modify the following parameters
ambit_dir=$HOME/src/ambit-install/share/cmake/ambit
block2_dir=$HOME/src/block2-install/share/cmake/block2
srcdir=$HOME/src/forte
build_type=Debug
# Run cmake
cd $srcdir
rm -rf CMakeFiles CMakeCache.txt cmake_install.cmake
cmake_psi4=`psi4 –plugin-compile`
$cmake_psi4 -Dambit_DIR=$ambit_dir -DCMAKE_BUILD_TYPE=$build_type -DMAX_DET_ORB=128 -DENABLE_block2=ON -Dblock2_DIR=$block2_dir
# Compile
make -j20
2)执行该脚本
bash compile-forte.sh
3)添加环境变量至~/.bashrc
PYTHONPATH=$HOME/src/forte:$PYTHONPATH
4. 运行Forte测试
cd $HOME/src/forte/tests/method
python run_forte_tests.py –type short