Я попытался установить caffe в Ubuntu 16.04, и я столкнулся с ошибкой, когда набрал make all
в корневом каталоге caffe.
protoc: error while loading shared libraries: libprotoc.so.9: cannot open shared object file: No such file or directory
Я попытался protoc --version
, ошибка по-прежнему:
protoc: error while loading shared libraries: libprotoc.so.9: cannot open shared object file: No such file or directory
Итак, я использовал locate libprotoc.so.9
и обнаружил, что libprotoc существует в
/usr/lib/x86_64-linux-gnu/libprotoc.so.9
/usr/lib/x86_64-linux-gnu/libprotoc.so.9.0.1
Поэтому я использовал следующие методы, чтобы система знала, где находится libprotoc,
1)
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib
2) перейдите на /etc
и добавьте путь к
vim ld.so.conf
Хотя я использовал sudo ldconfig
каждый раз, когда я вносил какие-либо изменения в файлы, все жеошибка существует.Я также обнаружил, что когда я пытался gedit filename
, похожая ошибка будет отображаться как:
gedit: error while loading shared libraries: libmirprotobuf.so.3: cannot open shared object file: No such file or directory
Я действительно не знаю, как решить эту проблему с общими библиотеками.
И идея будет полезна!
ОБНОВЛЕНИЕ: , поэтому я удаляю исходный протобуф на sudo uninstall protobuf
, однако при использовании make all
в файле caffe появляется новая ошибка,
.build_release/src/caffe/proto/caffe.pb.h:10:40: fatal error: google/protobuf/port_def.inc: No such file or directory
И port_def.inc
на самом деле существует в ~/google/protobuf/port_def.inc
. Кажется, я не могу позволить кофе знать путь, вот в чем проблема.
Но как это решить?