#fortran #gfortran #umfpack
#фортран #gfortran #umfpack
Вопрос:
Я смог использовать umfpack, но только что обнаружил, что не могу использовать его по-прежнему. Я думаю, причина в моем недавнем обновлении Mac.
Я уже установил SuiteSparse ВЕРСИИ 4.5.4. Я использую интерфейс Fortran, umfpack.f90, из http://geo.mff.cuni.cz /~lh/Fortran/UMFPACK/. И использовать gfortran umfpack.f90 umfpack_simple_3subr.f90 -L/usr/local/lib -lumfpack
для компиляции. Но я получил следующие ошибки:
Undefined symbols for architecture x86_64:
"__gfortran_os_error_at", referenced from:
___mumfpack_MOD_umfpack_zi_operator_pcsr in ccAIP7gL.o
___mumfpack_MOD_umfpack_zi_operator_pcsc in ccAIP7gL.o
___mumfpack_MOD_umfpack_zi_operator_csr in ccAIP7gL.o
___mumfpack_MOD_umfpack_zi_operator_csc in ccAIP7gL.o
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
Я понятия не имею о решении проблемы. Любые предложения приветствуются! Заранее благодарю!
Комментарии:
1. В вашей теме письма вы предполагаете, что вы обновили Mac. Вы имеете в виду новую версию macOS? Я мало что знаю об этом, извините, но я думаю, что в какой-то момент недавно macOS прекратила поддержку 32-битных двоичных файлов. Может быть, в этом проблема? Я предлагаю вам сообщить нам, до какой версии macOS вы обновились, а еще лучше, с какой.
2. Что именно вы обновили? Как вы установили свой gfortran? Вы переустанавливали его? Вы перекомпилировали UMFPACK с переустановленным gfortran? У нас есть несколько похожих вопросов.
3. Спасибо за ваш ответ. Да, я использую новую версию macOS, и gfortran также переустановлен. Приятно знать, что есть похожие вопросы. Извините, что я не могу их найти. Не могли бы вы поделиться ими со мной? @Vladimir F Большое спасибо!
4. «Вы перекомпилировали UMFPACK с переустановленным gfortran?» Пожалуйста, ответьте на это, это важно. Другие вопросы и ответы будут касаться ошибки «символы не найдены для архитектуры x86_64» и libgfortran в частности, но не UMFPACK конкретно.
5. Привет @Vladimir F, спасибо, что указали на это. Я не был уверен в этом на 100 процентов, потому что я никогда не указываю версию gfortran при компиляции кода. Но я только что запустил
gfortran --version
терминал, и он показываетGNU Fortran (GCC) 10.2.0 Copyright (C) 2020 Free Software Foundation, Inc.
, что он новый. Тогда я думаю, что да, я перекомпилировал UMFPACK с переустановленным gforran.