为什么 mpich 无法正确安装

为什么 mpich 无法正确安装

我在 16.04。当我

sudo apt-get 安装 mpich

并检查 lib 目录

/usr/lib/mpich

它包含预期的包含目录,但其中包含 lib 目录:

/usr/lib/mpich/lib

是指向以下内容的符号链接:

/usr/lib/x86_64-linux-gnu

据我所知,没有 lib 文件,而且我无法编译代码,因为它找不到 mpich 库。

/usr/lib/mpich$ readlink -f lib

返回:

/usr/lib/x86_64-linux-gnu

以下是编译和链接命令:

ifort -warn none -O2 -I/usr/include/mpich/ -c bound.F90 -o bound.o

ifort-o 边界.o-lmpi

错误是:

bounding.F90:(.text+0xaa): 对“mpi_sendrecv_”未定义引用

链接目录是

/usr/include/mpich/lib

答案1

mpich软件包仅包含运行 MPICH 程序所需的程序二进制文件。

您将需要安装libmpich-dev包含 MPICH 头和静态库的软件包,以及构建 MPICH 程序所需的编译器包装器。


根据您提供的错误消息,问题不在于mpich安装不正确,而在于您未能链接相关函数所需的库,这似乎是libmpichfort

即你需要添加

-lmpichfort 

到您的链接命令。

相关内容