/usr/bin/ld: не удается найти -llapack

Я ищу помощь для установки в ubuntu 14.04. Я устанавливаю пакет на своем компьютере. У них есть свои make файлы. Мне нужно запустить make.

Когда я это сделал, я нашел ошибку, например.....

gfortran -O2 -fopenmp -msse2 -o nmbnd.run p_nmbnd.o i_main.o m_getwsr.o ../IOLIB/*.o ../ATOM/*.o ../BNDASA/*.o ../EXTENS/*.o ../FINDES/*.o ../LATTICE/*.o ../SAMPLE/*.o ../TETRA/*.o ../IOCTRL/*.o ../LMIO/*.o ../MAINA/*.o ../NMTO/*.o ../SYM/*.o ../TBSTR/*.o ../CHAPOT/*.o  -L/usr/share/doc/liblapack -llapack -L/usr/share/doc/libblas -lblas 
/usr/bin/ld: cannot find -llapack
/usr/bin/ld: cannot find -lblas
collect2: error: ld returned 1 exit status
make[2]: *** [nmbnd.run] Error 1
make[2]: Leaving directory `/home/santuphys/NMTO-47.ZB.28/06.gfort/MAIN'
make[1]: *** [cleanmake] Error 2
make[1]: Leaving directory `/home/santuphys/NMTO-47.ZB.28/06.gfort/MAIN'
make: *** [ooo.dep] Error 2

Я пробовал все другие подобные вопросы на этом форуме о ссылке, но я не мог ее решить. Я указал путь к Lapack и Lblas в моем компьютере, также записывая...

LAPACK_LIB=   -L/usr/lib/ -llapack  -lblas

Это не сработало. Пожалуйста, помогите мне с этой проблемой.

Спасибо заранее.

Ответы

Ответ 1

В Ubuntu 14.04 убедитесь, что у вас есть пакеты

  • liblapack-DEV
  • liblapack3
  • libopenblas база
  • libopenblas-DEV

установлен. После этого "-L/usr/lib -llapack -lblas" должен работать. Также обратите внимание, что, как уже упоминалось в другом ответе, в выводе, который вы показали, у вас есть "-L/usr/share/doc/liblacpack -L/usr/share/doc/libblas", что, конечно же, не то, что вы хотите.

Ответ 2

Просто установите пакеты, содержащие библиотеки liblapack.so. * и libblas.so. *. Если вы уверены, что эти пакеты уже установлены, просто найдите их: find/-name 'liblapack *' и добавьте этот путь к gcc с помощью -L/path/to/liblapack.

edit: В вашем вызове fortran-компилятора есть несколько каталогов, заданных с -L, но вы уверены, что необходимые библиотеки находятся в каталогах документации: -L/usr/share/doc/liblapack -L/usr/share/doc/libblas

Ответ 3

Моя ошибка была такой:

/usr/bin/ld: не удается найти -lgfortran

Я решил проблему после этого поста здесь

sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/4.9/libgfortran.so /usr/lib/libgfortran.so

NB Я знаю, что это старый пост. Но я потратил много времени, чтобы решить это, и в конце концов, это было очень просто. Я надеюсь, что другие, имеющие такую же проблему, могут решить это очень быстро.