1.5. PESTc

1.5.1. 参考网站

Install — PETSc 3.18.2 documentation

Third Party Packages | ADflow

1.5.2. 安装过程

 1# unzip in the target directory, e.g., $HOME/opt/
 2cd ~/opt/
 3wget https://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-3.18.2.tar.gz
 4tar -xvf petsc-3.18.2.tar.gz
 5
 6# 安装路径为当前路径
 7cd petsc-3.18.2
 8
 9./configure --PETSC_ARCH=real-opt --with-mpi-dir=${MPI_HOME} \
10--with-scalar-type=real --with-debugging=0 \
11--download-metis=yes --download-parmetis=yes \
12--download-superlu_dist=yes --download-fblaslapack=yes \
13--with-shared-libraries=yes --with-fortran-bindings=1 --with-cxx-dialect=C++11
14
15make PETSC_DIR=$HOME/opt/petsc-3.18.2 PETSC_ARCH=real-opt all
16
17# Check if the libraries are working
18make PETSC_DIR=$HOME/opt/petsc-3.18.2 PETSC_ARCH=real-opt check

1.5.3. 添加环境变量

1echo '# Petsc-3.18.2' >> $HOME/.bashrc
2echo 'export PETSC_DIR=$HOME/opt/petsc-3.18.2' >> $HOME/.bashrc
3echo 'export PETSC_ARCH=real-opt' >> $HOME/.bashrc
4echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PETSC_DIR/$PETSC_ARCH/lib' >> $HOME/.bashrc
5echo 'export PETSC_LIB=$PETSC_DIR/$PETSC_ARCH/lib' >> $HOME/.bashrc
6echo ' ' >> $HOME/.bashrc
7source ~/.bashrc

1.5.4. petsc4py

1# petsc4py-3.18.2
2cd $PETSC_DIR/src/binding/petsc4py
3pip install .
4
5# Conda 更新 **conda/lib/libstdc++.so.6
6conda install -c anaconda libstdcxx-ng