Настройка G ++ или ICC для mpi.h в Ubuntu - PullRequest
5 голосов
/ 23 апреля 2011

Я никогда не занимался программированием за пределами VS08.

Я пытаюсь скомпилировать программу под названием LAMMPS с любым из двух соответствующих файлов make. Один вызывает g ++, а другой - icc (компилятор Intel).

icc выдает эту ошибку:

icc -O -DLAMMPS_GZIP -DMPICH_SKIP_MPICXX -DFFT_FFTW -M write_restart.cpp> write_restart.d write_restart.cpp (15): катастрофическая ошибка: не удается открыть исходный файл "mpi.h" #include "mpi.h"

и g ++ выдает эту ошибку

g ++ -g -O -DLAMMPS_GZIP -DMPICH_SKIP_MPICXX -DFFT_FFTW -M verlet.cpp> verlet.d pointers.h: 25: фатальная ошибка: mpi.h: нет такого файла или каталога компиляция прекращена.

Файл mpi.h находится в / usr / lib / openmpi / include

Насколько я понимаю, мне нужно установить переменную $ PATH, которая читает

bash: / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / X11R6 / bin: / opt / intel / bin: / USR / Библиотека / OpenMPI / включают в себя:

и $ LD_LIBRARY_PATH, которые в настоящее время читают

/ USR / Lib / OpenMPI / Библиотека:

ТАК, как включить файл mpi.h? Так что либо icc или g ++ его найдут?

Ответы [ 3 ]

5 голосов
/ 23 апреля 2011

mpi.h - заголовок для библиотеки MPI. Это будет включено, если вы используете в компиляторе MPI ++ MPI-компилятор вместо g ++. mpic ++ вызовет соответствующий компилятор. Из того, что вы описываете, у вас есть пакет openmpi, установленный на вашем компьютере с Ubuntu.

Для получения дополнительной информации вам необходимо обратиться к руководству, например,

http://lammps.sandia.gov/doc/Section_start.html#2_2 (для LAMMPS)

и, возможно, вам нужно посмотреть руководство openmpi о том, как настроить дополнительный компилятор. Не уверен, что это можно сделать после сборки самого openmpi. По умолчанию я думаю, что в Ubuntu обертки компилятора openmpi будут вызывать только g ++. CMIIW.

2 голосов
/ 10 ноября 2012

Хорошо, я заставил его работать с g ++ при настройке cc как "mpic ++. Mpich2" вместо "mpic ++"

0 голосов
/ 24 июля 2012

вы можете попробовать скомпилировать используя файл openmpi make в / src / MAKE сделать openmpi

в моем случае, эта опция была успешной

...