Ошибка импорта caffe / scipy: liblapack.so.3: неопределенный символ: sgetrs_N_single - PullRequest
0 голосов
/ 28 марта 2019

Я установил Caffe в стандартной системе Ubuntu 16.04, работающей на Jetson TX1. Он работал нормально, пока я не скомпилировал и не установил OpenBlas, а затем не начал получать эту ошибку при импорте caffe в Python 2:

>>> import caffe

[ Large stack backtrace omitted]

from scipy.linalg import _fblas
ImportError: /usr/lib/liblapack.so.3: undefined symbol: sgetrs_N_single

Я смог вернуться к работе с помощью этой команды:

альтернативы обновления sudo --config liblapack.so.3

и выбор liblapack.so.3 в / usr / lib , а не в / usr / lib / openblas-base .

Я бы предпочел не делать это каждый раз, когда я устанавливаю OpenBlas. Я погуглил за эту ошибку, но не увидел никаких решений. Кто-нибудь видел это?

1 Ответ

1 голос
/ 28 марта 2019

Если посмотреть на источник openblas, похоже, что этот символ используется в Макфайле для сборки getrs.

Похоже, что в этой библиотеке отсутствует набор базовых двоичных файлов. sgetrs_N_single является первым в make-файле, но я подозреваю, что если он будет удален, то вы получите ту же ошибку, следующую за sgetrs_T_single. Когда разделяемая библиотека ищет этот подкомпонент, она не может найти его. Я подозреваю, что в сборке что-то пошло не так, или в инструкциях по сборке отсутствует шаг.

...