Я пытаюсь построить ветвь (?) Версию Caffe (т.е. DeepLab v.2) из исходного кода. Я хочу, чтобы он существовал только в определенной c среде Anaconda.
Серия инструкций make
заканчивается символом make distribute
, который создает подкаталоги distribute/bin/
, distribute/include/
и distribute/lib/
. Как и ожидалось, подкаталог bin
содержит файлы .bin
, подкаталог include
имеет дерево каталогов с файлами .hpp
в качестве своих листьев, а подкаталог lib
содержит файлы .a
, .so
и .so.1.0.0-rc3
.
Я думал, что должен был скопировать их в файлы bin
, include
и lib
, что я и сделал. Однако, когда я пытаюсь импортировать caffe, я получаю следующую ошибку: libcaffe.so.1.0.0-rc3
не найден:
(deep_fusion) me@balin:~/Projects/LocalCaffe/fusionseg/python$ python
Python 2.7.17 |Anaconda, Inc.| (default, Oct 21 2019, 19:04:46)
[GCC 7.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import caffe
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/me/Projects/LocalCaffe/deeplab-public-ver2/distribute/python/caffe/__init__.py", line 1, in <module>
from .pycaffe import Net, SGDSolver, NesterovSolver, AdaGradSolver, RMSPropSolver, AdaDeltaSolver, AdamSolver
File "/home/me/Projects/LocalCaffe/deeplab-public-ver2/distribute/python/caffe/pycaffe.py", line 13, in <module>
from ._caffe import Net, SGDSolver, NesterovSolver, AdaGradSolver, \
ImportError: libcaffe.so.1.0.0-rc3: cannot open shared object file: No such file or directory
Когда я смотрю на каталог lib, связанный с этой средой (то есть deep_fusion), делаю найти эту библиотеку -
$ ls ./anaconda2/envs/deep_fusion/lib/*caffe*
./anaconda2/envs/deep_fusion/lib/libcaffe.a ./anaconda2/envs/deep_fusion/lib/libcaffe.so.1.0.0-rc3
./anaconda2/envs/deep_fusion/lib/libcaffe.so
Почему мой import
не может найти эту библиотеку?