Mpif90 не компилируется должным образом после обновления до Mac Big Sur

Я недавно перешел на Big Sur, и у меня проблемы с запуском кода на mpi. Я запускаю тестовый код со следующей командой:

mpif90 -o test.f90 ./test

Я получаю следующую ошибку:

-bash: mpif90: command not found

Я обновил homebrew и macports, но не могу решить проблему. Я подозреваю, что это как-то связано с неправильным именем пути. Любые идеи? Спасибо.

@ Oo.oO Спасибо. При настройке сборки gcc (по ссылке в вашем комментарии) командой:

 ../configure --prefix=$HOME/opt/usr/local/gcc/gcc-9.2.0 \
 --enable-checking=release \
 --enable-languages=c,c++,fortran \
 --disable-multilib \
 --with-sysroot=$HOME/opt/usr/local/gcc_system_root \
 --program-suffix=-9.2.0

возникает следующая ошибка:

 configure: error: in `$HOME/opt/src/gcc/gcc-9.2.0/build':
 configure: error: C compiler cannot create executables

Я обновил Xcode (версия 12.3). Есть предположения? Спасибо.


person Robert A    schedule 23.01.2021    source источник
comment
Вы всегда можете попробовать собрать все из исходников (я имею в виду MPI): owsiak.org/   -  person Oo.oO    schedule 24.01.2021
comment
обо всем по порядку. Как вы устанавливали компиляторы GNU MPI? это от пива? если да, то что возвращают which gfortran и which mpicc?   -  person Gilles Gouaillardet    schedule 24.01.2021
comment
@GillesGouaillardet Я установил openmpi версии 2.0.2 с последними обновлениями homebrew. which gfortran возвращает /usr/local/bin/gfortran, а which mpicc возвращает командную строку.   -  person Robert A    schedule 24.01.2021
comment
это странно, поскольку brew предоставляет Open MPI 4.0.5. Попробую удалить и переустановить open-mpi с пивом.   -  person Gilles Gouaillardet    schedule 24.01.2021


Ответы (1)


Проблема заключалась в том, что были другие /bin/ каталоги, в которых были старые версии gcc и openmpi. При обновлении новые файлы из /lib/ каталогов нужно было переместить в /Cellar/ каталоги. Проблема устранена при первом удалении всех старых Macport и компиляторов с неверными файлами и / или путями как sudo port -fp uninstall installed, brew uninstall openmpi и brew uninstall gcc. Затем переустановите новые домашние компиляторы brew install gcc, brew install openmpi. Это дает правильные пути к настроенным файлам при отправке файла make или, в данном случае, с использованием команды mpif90.

person Robert A    schedule 28.01.2021