You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu16.04下安装MPI版MultiNest遇Fortran库缺失问题

解决Ubuntu 16.04下MultiNest安装时CMake找不到mpi_mpifh库的问题

嗨,我来帮你搞定这个CMake报错的问题~在Ubuntu 16.04环境下,找不到mpi_mpifh库的情况,基本是因为OpenMPI的Fortran开发组件没安装完整,咱们一步步来解决:

  • 第一步:补全OpenMPI的Fortran开发依赖
    mpi_mpifh是Fortran语言的MPI接口库,Ubuntu默认的OpenMPI包可能没包含这部分组件。执行下面的命令安装完整依赖:

    sudo apt-get update && sudo apt-get install libopenmpi-dev gfortran
    

    虽然你已经有gfortran了,但这个命令会确保MPI和Fortran的绑定库都安装到位。

  • 第二步:指定MPI Fortran编译器重新运行CMake
    进入你的MultiNest build目录,手动指定MPI的Fortran编译器路径,让CMake能准确找到相关库:

    cmake .. -DMPI_Fortran_COMPILER=/usr/bin/mpif90
    

    如果你是手动编译安装的OpenMPI,把路径换成你实际的mpif90位置,比如/usr/local/bin/mpif90。

  • 第三步:检查OpenMPI是否开启Fortran支持(如果前两步无效)
    先执行mpif90 --version,如果能正常输出版本信息,说明Fortran绑定没问题;如果报错,那你之前安装的OpenMPI可能没开启Fortran支持,需要重新编译安装:

    # 假设你的OpenMPI源码在~/openmpi目录,根据实际路径调整
    cd ~/openmpi
    ./configure --prefix=/usr/local/openmpi --enable-mpi-fortran
    make -j$(nproc)
    sudo make install
    # 配置环境变量
    echo "export PATH=/usr/local/openmpi/bin:$PATH" >> ~/.bashrc
    echo "export LD_LIBRARY_PATH=/usr/local/openmpi/lib:$LD_LIBRARY_PATH" >> ~/.bashrc
    source ~/.bashrc
    

    完成后回到MultiNest的build目录,重新执行CMake命令。

  • 第四步:清理CMake缓存重试
    如果之前的CMake失败留下了缓存文件,可能会干扰新的配置,先清理再重试:

    rm -rf CMakeCache.txt CMakeFiles
    cmake ..
    

内容的提问来源于stack exchange,提问作者kevinea

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:04:27