我已经在他们的 GitHub 问题页面上询问了开发人员,但到目前为止没有任何帮助 https://github.com/explosion/spaCy/issues/855
用 conda 创建了一个新的环境
conda create -n spacy python=3.5 ipython
然后用pip安装spacy(1.6.0)(conda还是0.101.0版本)
pip install spacy
但我仍然得到这个错误。
In [1]: import spacy
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-1-c080f6458562> in <module>()
----> 1 import spacy
/home/alexis/anaconda3/envs/spacy/lib/python3.5/site- packages/spacy/__init__.py in <module>()
4 from .about import __version__
5
----> 6 from . import en
7 from . import de
8 from . import zh
/home/alexis/anaconda3/envs/spacy/lib/python3.5/site-packages/spacy/en/__init__.py in <module>()
6 from ..util import match_best_version
7 from ..util import get_data_path
----> 8 from ..language import Language
9 from ..lemmatizer import Lemmatizer
10 from ..vocab import Vocab
/home/alexis/anaconda3/envs/spacy/lib/python3.5/site-packages/spacy/language.py in <module>()
15
16
---> 17 from .tokenizer import Tokenizer
18 from .vocab import Vocab
19 from .tagger import Tagger
ImportError: /home/alexis/anaconda3/envs/spacy/lib/python3.5/site-packages/spacy/tokenizer.cpython-35m-x86_64-linux-gnu.so: undefined symbol: _ZTINSt8ios_base7failureB5cxx11E
我确实获取了新的 conda 环境,而 pip 是来自那个新环境的。我的选项用完了。
explosion/sense2vec#19 也有类似的问题,但该解决方案没有帮助。
操作系统:Ubuntu 16.04.1 LTS
注意,我在 MacOS Sierra 上没有这个问题。
更新
我已经从 MacOS(它正在工作的地方)导出了我的 conda 环境,并在它不工作的机器上创建了一个新环境。相同的堆栈跟踪。
最佳答案
我在 sense2vec 问题页面上看到 https://github.com/explosion/sense2vec/issues/19执行 conda install libgcc
它对我有用。
关于python - Spacy 导入错误出 Undefined Symbol,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42516280/