@Dum_spiro_spero

Как подключить библиотеку LAPACK к Фортрану на MacOS X?

Доброго дня!
Имеется программа на Фортране 90, которая использует библиотеку линейной алгебры LAPACK. Программа нормально компилируется и работает в Ubuntu. Теперь нужно запустить ее на Mac OS X (версия 10.11.4). Я использую компилятор gfortran, установленный через homebrew, библиотека lapack находится в директории /usr/local/lib/. Когда я пытаюсь скомпилировать код, вылезает следующая ошибка:

gfortran my_prog.f90 -L/usr/local/lib/ -llapack
Undefined symbols for architecture x86_64:
"_daxpy_", referenced from:
_zggbal_ in liblapack.a(zggbal.o)
...
"_ztrmv_", referenced from:
_zlarft_ in liblapack.a(zlarft.o)
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status

Интернет-поиск подсказывает, что ошибка появляется из-за ссылки на библиотеку. Когда я компилирую программу, не прописывая путь к библиотеке, ошибка исчезает. Так же ошибка не появляется, если использовать framework accelerate.

Архитектура библиотек x86-64
lipo -info *.a
input file libfftw3.a is not a fat file
input file liblapack.a is not a fat file
Non-fat file: libfftw3.a is architecture: x86_64
Non-fat file: liblapack.a is architecture: x86_64

Ошибка возникает не только при использовании LAPACK, но и при попытке подключения библиотеки FFTW.
Подскажите, пожалуйста, какую-нибудь идею для решения проблемы.
  • Вопрос задан
  • 550 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы