Я пытаюсь запустить BdG-TMAT код. В этой папке находятся файлы Fortran и python, начиная с основного файла запуска BDG_K.py использует некоторые функции fortran. Поэтому, чтобы запустить код fortran, я использую конвертер f2py, который преобразует tmatf.f90-tmatf.Итак. (f2py приходит автоматическ-установленный с numpy). Я запускаю make из папки BdG-Tmat, где я получаю ошибку следующим образом:
gfortran:f77: /tmp/tmpQErUyR/src.linux-x86_64-2.7/potsub-f2pywrappers.f
/usr/bin/gfortran -Wall -Wall -shared /tmp/tmpQErUyR/tmp/tmpQErUyR/src.linux-x86_64-2.7/potsubmodule.o /tmp/tmpQErUyR/tmp/tmpQErUyR/src.linux-x86_64-2.7/fortranobject.o /tmp/tmpQErUyR/potsub.o /tmp/tmpQErUyR/tmp/tmpQErUyR/src.linux-x86_64-2.7/potsub-f2pywrappers.o potsubi.o -lgsl -llapack -lcblas -lgslcblas -lgfortran -o ./potsub.so
/usr/bin/ld: error: cannot find -lcblas
collect2: error: ld returned 1 exit status
/usr/bin/ld: error: cannot find -lcblas
collect2: error: ld returned 1 exit status
error: Command "/usr/bin/gfortran -Wall -Wall -shared /tmp/tmpQErUyR/tmp/tmpQErUyR/src.linux-x86_64-2.7/potsubmodule.o /tmp/tmpQErUyR/tmp/tmpQErUyR/src.linux-x86_64-2.7/fortranobject.o /tmp/tmpQErUyR/potsub.o /tmp/tmpQErUyR/tmp/tmpQErUyR/src.linux-x86_64-2.7/potsub-f2pywrappers.o potsubi.o -lgsl -llapack -lcblas -lgslcblas -lgfortran -o ./potsub.so" failed with exit status 1
make: *** [potsub.so] Error 1
таким образом, при запуске файла python в этой папке я получаю следующую ошибку :
$python BDG_K.py
Traceback (most recent call last):
File "BDG_K.py", line 29, in <module>
import tmatf
ImportError: /home/arpit/Desktop/BdG-Tmat/tmatf.so: undefined symbol: dsbevx_
данный символ не есть в исходном файле (где это dsbevx вместо dsbevx_)
пожалуйста, руководство, Как правильно установить CBLAS для того, чтобы удалить первую ошибку и связана ли вторая ошибка с первой. Я попытался сделать исходную папку CBLAS, но она не работает нормально. Я следовал этому:http://vibrationdata.wordpress.com/2011/11/07/install-cblas-in-ubuntu/ .