OpenMPI уже установлен в OS X?

Я искал MPI для OS X, и некоторые веб-сайты говорят, что он уже установлен в OS X (начиная с 10.5).

Может кто подскажет где он установлен? mpiccни найти не могу mpirun. Или я должен собрать OpenMPI из кода?

Ответы (2)

Ни mpiccодин из них не mpirunустановлен в стандартной системе Mountain Lion и не присутствует в Xcode v5 или ниже.

Система упаковки homebrew имеет тривиально простую установку (v2.0.1):

brew install open-mpi 

Вы также можете создать свой OpenMPI из кода:

Из этой статьи следует , что Lion отказался от включения сборки OpenMPI , но я бы предпочел приведенные выше инструкции, а не версию MacPorts, если вы еще не используете MacPorts.

Эта ссылка не работает. Не могли бы вы объяснить, как установить openmpi на OSX в своем ответе?
@kilojoules Спасибо, что заметили перенаправление. Ссылка не была сломана, но содержимое перемещено навсегда. Я добавил хомбрю, так как он работает намного лучше для меня, а также изменил одну из ссылок, чтобы они оставались сверкающими и направляли вас прямо к контенту, а не к странице «мы переехали».

Убедитесь gcc, что у вас g++установлена ​​версия не ниже 5.0 (например, brew install gcc5 --with-fortran --without-multilib)

Загрузите файл openmpi tar.gz здесь: http://www.open-mpi.org/

cd ~/Downloads
tar zxvf openmpi...tar.gz
cd openmpi....
./configure --prefix=/usr/local/openmpi
make
sudo make install (enter password)

Теперь добавьте

export MPI_DIR=/usr/local/openmpi
export PATH=/usr/local/openmpi/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/openmpi/lib:$LD_LIBRARY_PATH
export DYLD_LIBRARY_PATH=$LD_LIBRARY_PATH

На дно~/.bash_profile

Хороший! Считаете ли вы, что сборка из исходного кода лучше, чем просто brew install openmpiкаким-то образом?
@bmike mpif90 появился No underlying compiler was specified in the wrapper compiler data fileпосле того, как я попробовал метод заваривания на своем персональном компьютере.
Понятно. Если вы хотите задать дополнительный вопрос и связать его здесь или связаться со мной в комментариях, я постараюсь помочь вам обойти этот контрольно-пропускной пункт, если решение ускользает от вас.