提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
一些PETSc安装中遇到的问题或者一些想法
一、如何安装PETSc的不同版本
1.进入https://gitlab.com/petsc/petsc
2.点击main下拉到自己想要的版本
我这里选择的是3.18.1。
3.进入后点击右上角“代码”选项,并下载源代码的.tar.gz格式文件
4.这样我们就下载好了PETSc-v3.18.1的版本,接下来就是正常操作就行。
二、安装MPI时make/ make install不成功
make/ make install时报错如下
可以看到报错内容中有Permission denied
,说明权限不够,因此只需要在前面加上sudo
即可。
sudo make %编译
sudo make install %安装
编译过程需要很久,耐心等待!
三、mpich有问题时,需要手动配置其他版本的mpich
mpi安装过程详解
第一步:官网下载MPI ( http://www.mpich.org/downloads/ )
第二步:解压到指定文件夹
- 解压命令:
tar -zxvf mpich-4.1.1.tar.gz
- 这里解压到: /home/daihuanhe/下载/mpich-4.1.1
第三步:新建安装路径
配置之前为了之后方便查找MPI的安装路径,所以我们事先新建一个文件夹以便后续操作,这里我们在主文件夹目录下新建了一个mpich-4.1.1文件夹,现在它是一个空文件夹,需要等到make命令(即安装命令)后,里面才会有东西,也就是
注意
这里新建的文件夹名称和文件夹路径可以任意给,只需要最后在.bashrc
文件里导入相应的环境变量就行。
第四步:进入该 mpich-4.1.1 目录下配置
cd mpich-4.1.1
./configure --prefix=/home/daihuanhe/mpich-4.1.1
这条命令配置mpi,且将后续安装路径更改到/home/daihuanhe/mpich-4.1.1
,如果没有这条命令,一般来说会安装在/usr/local/bin
这个目录下。(如果不指定安装位置,那么直接./configure
就行,这样也是可以成功配置的)
需要注意的是配置的时候可能会提示gcc、gfortran、g++等编译器没有安装(可能之前没有安装),直接根据命令行显示更改就行。
第五步:编译安装
make
编译:这个过程会需要很久很久,如果你的不需要很久,那说明前面你的操作有问题。这个make过程其实是将mpich-4.1.1
里面的.c , .cpp文件等进行编译,可以看到make命令后,终端一直在进行文件编译。make install
安装:过程很快,无需等待。
上述两步完成以后可以去之前创建的那个文件夹中可以看到下面四个文件夹
在bin
目录下
五个带箭头的文件极其重要。
第六步:环境变量的设置
vim ~/.bashrc
或者vi ~/.bashrc
在最后一行添加export PATH=/home/daihuanhe/mpich-4.1.1/bin:$PATH
注意:$PATH
一定要添加!!!- 保存后退出(i 为插入模式,添加后键入ESC 和 :wq,注意冒号)
第七步:更新环境变量
source ~/.bashrc
第八步:至此,mpi安装完成
第九步:验证安装成功与否
-
进入解压的/mpich-4.1.1/examples文件下,在命令行终端打开
-
编译
这将在当前目录下生成一个 hellow 可执行文件。 -
执行
-
并行(多核)执行
mpiexec 的exec是execute(执行)的缩写。
至此,MPI已经全部安装完成!!!
四、./configure 提示无法下载
原因可能是网络的问题,这里可以直接去上面给的地址,下载sowing压缩包即可https://bitbucket.org/petsc/pkg-sowing/downloads.
需要注意的是,一般来说照着报错下对应版本即可,但有时候编译不同版本的PETSC时可能面临版本不兼容的情况,这个时候可以向前或者向后试几个不同的版本。
有时候还会报错无法下载线性包 fblaslapack,我们同样去官网下载好。
需要注意的是在--download-sowing=/路径/sowing.tar.gz
中的路径是sowing压缩包的绝对路径。这里我下载到了下图
所以我的命令行是这样的
fblaslapack也是类似的操作。
至此,应该就能成功编译。如果还是不可以,那可能是其他配置的问题,具体可以看报错。不过有时候也有可能是官网上其他一些压缩包在编译的时候下载出现了问题或者本身就有一定的bug导致无法编译,这时不用担心,放两天等官方修复了就好了(目前来看是这样的)。