我正在尝试在 Ubuntu 22.04 LTS 上从 GitHub(GLSLIM、link)安装软件。需求中,既有MPI,也有CMake。我使用在网站上找到的库(CMake 和 openmpi)安装了它们。当我尝试进行 GLSLIM 构建时,出现以下错误:
-- Could NOT find MPI_C (missing: MPI_C_LIB_NAMES MPI_C_WORKS)
-- Could NOT find MPI_CXX (missing: MPI_CXX_LIB_NAMES MPI_CXX_WORKS)
CMake Error at /usr/local/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find MPI (missing: MPI_C_FOUND MPI_CXX_FOUND)
Call Stack (most recent call first):
/usr/local/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
/usr/local/share/cmake-3.23/Modules/FindMPI.cmake:1830 (find_package_handle_standard_args)
CMakeLists.txt:6 (find_package)
我在网上搜索了可能的解决方案,发现了很多类似的问题。例如,这些是一些相关的 StackOverflow 问题:first、second、third、fourth 等。
不管怎样,他们都没有解决我的问题,而且似乎也与我没有严格的关系。
我不知道从哪里开始寻找解决方案。非常感谢任何帮助。
也许可以使用以下内容:
sudo rm -f /etc/aternatives/mpi* /var/lib/dpkg/alternatives/mpi*
sudo apt install openmpi-bin
您会发现,在某些系统(例如 Fedora)上,当您
dnf install openmpi-devel
时,您将获得一个模块。您应该加载它 (module load mpi/openmpi-x86_64
) 或为 CMake 提供显式路径,以便它可以找到该库。
在典型的 HPC 集群上,您将
module load
。