Почему я не могу найти эту библиотеку?

Я не очень хорошо разбираюсь в этой теме и поэтому не могу понять, почему следующая команда не работает:

$ gfortran -o dsimpletest -O dsimpletest.o ../lib/libdmumps.a \ ../lib/libmumps_common.a -L/usr -lparmetis -lmetis -L../PORD/lib/ \ -lpord -L/home/eiser/src/scotch_5.1.12_esmumps/lib -lptesmumps -lptscotch \ -lptscotcherr /opt/scalapack/lib/libscalapack.a -L/usr/lib/openmpi/ \ -lmpi -L/opt/scalapack/lib/librefblas.a -lrefblas -lpthread /usr/bin/ld: cannot find -lrefblas collect2: ld returned 1 exit status 

Это происходит при компиляции библиотеки mumps . Вышеупомянутая команда выполняется make. У меня есть librefblas.a по правильному пути:

 $ ls /opt/scalapack/lib/ -l total 20728 -rw-r--r-- 1 root root 619584 May 3 14:56 librefblas.a -rw-r--r-- 1 root root 9828686 May 3 14:59 libreflapack.a -rw-r--r-- 1 root root 10113810 May 3 15:06 libscalapack.a -rw-r--r-- 1 root root 653924 May 3 14:59 libtmg.a 

Вопрос 1: Я думал, что -L переключатель ld принимает каталоги, почему он ссылается на файл прямо здесь? Если я удалю librefblas.a из аргумента -L, я получаю много ошибок «неопределенной ссылки».

Вопрос 2: -l должен подразумевать поиск .a и затем поиск .so , если я правильно помню. Является ли проблема, что у меня нет файла .so ? Я попытался выяснить, используя gfortran -v ... , но это не помогло мне отладить его.

    One Solution collect form web for “Почему я не могу найти эту библиотеку?”

    Я смог решить это с помощью комментариев, в частности, для @Mat.

    Поскольку я хотел скомпилировать версию openmpi, это помогло использовать mpif90 вместо gfortran , который в моей системе

      $ mpif90 --showme /usr/bin/gfortran -I/usr/include -pthread -I/usr/lib/openmpi -L/usr/lib/openmpi -lmpi_f90 -lmpi_f77 -lmpi -ldl -lhwloc 
    Interesting Posts

    Как проверить, читается ли группа файлов?

    Vim, контекстно-зависимое поведение комментариев / неудобств

    Проблемы с передачей команд другому скрипту через ssh

    Запуск grep или других команд в файлах на веб-сервере

    Pulseaudio / X разрешение другой пользователь / SSH

    Nmap -sn: сканирование или отсутствие сканирования?

    Изменение разрешения экрана / геометрии vncserver без randr в Linux

    Переместить файл и сохранить владельца и режим в одной атомной операции

    Создайте раздел NTFS (в Linux) для двойной загрузки в Linux / Windows 7

    Последняя перезагрузка показала несколько строк одновременно?

    Существует ли общая файловая система на основе проверки подлинности с открытым ключом?

    Как активно grep log за последние 15 секунд для фразы?

    Является ли сервером Apache на личном сервере уязвимость безопасности?

    Выполнение голосовых вызовов с использованием Huawei E1550

    Не удается запустить команды udisks в сценариях udev

    Linux и Unix - лучшая ОС в мире.