zoukankan      html  css  js  c++  java
  • Linux中openmpi配置

    到 http://www.open-mpi.org/ 下载openmpi并解压,事先安装gcc或g++。

    我是openmpi-1.6.5,进入解压文件夹,执行

    ./configure

    这一步执行时间会较长若出现 configure: error: C++ preprocessor "/lib/cpp" fails sanity check 错误

    这是缺少相应的库所致,找到原文如下:

    /lib/cpp fails sanity check的解决

      在某些软件的时候,运行./configure 会报错,错误提示为:

      configure: error: C++ preprocessor “/lib/cpp” fails sanity 
      check See `config.log’ for more details

      解决办法:出现该情况是由于c++编译器的相关package没有安装,以root用户登陆,在终端上执行:

      # yum install glibc-headers

      # yum install gcc-c++

    这位同志使用的是红帽子版本,对于ubuntu来说,只需把yum改成apt-get即可。

    由于build-essential中包含许多基本库,执行

    sudo apt-get install build-essential
    

     当再执行上一条命令时我的就没有错误了,然后再执行

    make all
    

     这一步也会执行较长时间,然后再执行

    make install
    

     完成安装,进入examples文件夹编译hello_c.c示例程序

    mpicc -o hello_c hello_c.c
    

      若这步出现mpicc: error while loading shared libraries: libopen-pal.so.4: cannot open shared object file: No such file or directory错误可以找到libopen-pal.so.4添加到LD_LIBRARY_PATH中,可以在home下执行 apt-file search libopen-pal.so.4找到所在位置,没安装apt-file系统应该可以提示你安装,安装后在执行时并提示你进行update执行完后在查找应该就可以了。

    若不想直接添加libopen-pal.so.4,一般找到你将openmpi装到哪个文件夹下执行

    $ export LD_LIBRARY_PATH+=:/dir/where/is/openmpi/lib即可,若是默认执行下面命令即可,但最新版本1.8.3为/usr/local/lib,所以执行export LD_LIBRARY_PATH+=:/usr/local/lib即可。
    export LD_LIBRARY_PATH+=:/usr/lib/openmpi/lib
    

     我就是执行这一条指令再执行mpicc完成编译,最后执行

    mpirun -n 4 ./hello_c
    

    其中4是进程数,就会看到成功执行的程序了

     

  • 相关阅读:
    三分 例题
    设计模式学习笔记(十九):迭代器模式
    设计模式学习笔记(十八):解释器模式
    设计模式学习笔记(十七):命令模式
    设计模式学习笔记(十六):职责链模式
    设计模式学习笔记(十五):代理模式
    设计模式学习笔记(十四):享元模式
    设计模式学习笔记(十三):外观模式
    设计模式学习笔记(十二):装饰模式
    设计模式学习笔记(十一):组合模式
  • 原文地址:https://www.cnblogs.com/sdxk/p/4029850.html
Copyright © 2011-2022 走看看