Почему Enaconda env не устанавливает LD_LIBRARY_PATH при активации? - PullRequest
0 голосов
/ 06 ноября 2019

При компиляции caffe в virtualenv в conda, при его запуске будет выдано сообщение

(rcqa) vimos@vimos-Z270MX-Gaming5 ➜  python git:(master) ✗ ipython                                                                                                                                                                            [19/11/6| 9:21AM]
Python 3.7.5 (default, Oct 25 2019, 15:51:11) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.9.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import caffe                                                                                                                                                                                                                                            
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-6e7bb19bc708> in <module>
----> 1 import caffe

~/git/bottom-up-attention/caffe/python/caffe/__init__.py in <module>
----> 1 from .pycaffe import Net, SGDSolver, NesterovSolver, AdaGradSolver, RMSPropSolver, AdaDeltaSolver, AdamSolver, NCCL, Timer
      2 from ._caffe import init_log, log, set_mode_cpu, set_mode_gpu, set_device, Layer, get_solver, layer_type_list, set_random_seed, solver_count, set_solver_count, solver_rank, set_solver_rank, set_multiprocess, Layer, get_solver
      3 from ._caffe import __version__
      4 from .proto.caffe_pb2 import TRAIN, TEST
      5 from .classifier import Classifier

~/git/bottom-up-attention/caffe/python/caffe/pycaffe.py in <module>
     11 import numpy as np
     12 
---> 13 from ._caffe import Net, SGDSolver, NesterovSolver, AdaGradSolver, \
     14         RMSPropSolver, AdaDeltaSolver, AdamSolver, NCCL, Timer
     15 import caffe.io

ImportError: libglog.so.0: cannot open shared object file: No such file or directory

Если вы передадите путь по умолчанию virtualenv lib как LD_LIBRARY_PATH, все будет отлично!

(rcqa) vimos@vimos-Z270MX-Gaming5 ➜  python git:(master) ✗ LD_LIBRARY_PATH=/home/vimos/anaconda3/envs/rcqa/lib ipython                                                                                                                        [19/11/6| 9:20AM]
Python 3.7.5 (default, Oct 25 2019, 15:51:11) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.9.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import caffe                                                                                                                                                                                                                                            

In [2]:                                                                                                                                                                                                                                                         
Do you really want to exit ([y]/n)? 

Почему бы не активировать этот путь по умолчанию?

...