Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
我刚刚使用以下命令将适用于Python的MATLAB Engine API安装到了我的主目录中
$ python setup.py build --build-base=$HOME install --prefix=$HOME 但是,当我尝试从Jupyter笔记本import matlab.engine ,出现以下错误: --------------------------------------------------------------------------- EnvironmentError Traceback (most recent call last) in () 8 import numpy as np 9 import matplotlib.pyplot as plt ---> 10 import matlab.engine 11 12 from dopa_net.behavioral_experiments.analysis_code import behavior_analysis as ba /home/despo/dbliss/lib/matlab/engine/__init__.py in () 57 pythonengine = importlib.import_module("matlabengineforpython"+_PYTHONVERSION) 58 except: ---> 59 raise EnvironmentError('The installation of MATLAB Engine for Python is ' 60 'corrupted. Please reinstall it or contact ' 61 'MathWorks Technical Support for assistance.') EnvironmentError: The installation of MATLAB Engine for Python is corrupted. Please reinstall it or contact MathWorks Technical Support for assistance. 奇怪的是,当我从与Jupyter notebook相同目录的IPython shell 中 import matlab.engine时,没有出现此错误。我不仅可以从shell导入引擎,它还可以在shell中工作,这向我展示了没有损坏的东西: In [1]: import matlab.engine In [2]: eng = matlab.engine.start_matlab() In [3]: tf = eng.isprime(37) In [4]: print tf True 有什么想法吗? 注意:我确实在今天早些时候将引擎的一个版本安装到了我的主目录中,但是我尝试(并认为自己确实)将其卸载。我的猜测是它的某些部分被抛在了后面,并造成了麻烦。但是,为什么它仅对Jupyter而不对IPython Shell造成麻烦? (您怎么猜我应该摆脱它?) 更新资料 我将错误跟踪到了matlab.engine模块的__init__.py文件中的以下行: importlib.import_module("matlabengineforpython2_7") 这不会在IPython Shell中引发错误,但是会在Jupyter中引发以下错误: --------------------------------------------------------------------------- ImportError Traceback (most recent call last) in () ----> 1 importlib.import_module("matlabengineforpython2_7") /usr/local/anaconda-2.4.0/lib/python2.7/importlib/__init__.pyc in import_module(name, package) 35 level += 1 36 name = _resolve_name(name[level:], package, level) ---> 37 __import__(name) 38 return sys.modules[name] ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /srv/local/matlab-2015a/extern/engines/python/dist/matlab/engine/glnxa64/../../../../../../../bin/glnxa64/libmwfl.so) 我不知道这是怎么回事。 更多&回答... |
![]() |
![]() |