更新 2:
发现主要问题和我想的不一样,求助于此。我将新问题移至新帖子:
Install custom python package in virtualenv
更新: 好的,所以我不小心搞砸了我的非虚拟环境。 我可以通过删除手动安装(通过 pip)lxml 并运行来轻松修复非 virtualenv(普通 bash)
conda install lxml --force
但出于某种原因,这在 virtualenv 中不起作用。 在那里,奔跑着
conda install lxml --force
工作时没有错误消息,但是当我运行 python 并简单地说
>>> import lxml
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named lxml
有什么建议吗??
旧消息:
我正在尝试将 virtualenv 用于我的 python flask 应用程序。 python 代码在没有 virtualenv 的情况下运行得很好。
我已经在 virtualenv 中安装了我需要的包,但是我在通过
安装了 lxml 之后pip install lxml
Installing collected packages: lxml
Successfully installed lxml-3.6.0
我在运行代码时收到以下错误消息:
File "/Users/XXX/xxx/flask-aws/lib/python2.7/site-packages/docx-0.2.4-py2.7.egg/docx.py", line 17, in <module>
from lxml import etree
ImportError: dlopen(/Users/XXX/xxx/flask-aws/lib/python2.7/site-packages/lxml/etree.so, 2): Library not loaded: libxml2.2.dylib
Referenced from: /Users/XXX/xxx/flask-aws/lib/python2.7/site-packages/lxml/etree.so
Reason: Incompatible library version: etree.so requires version 12.0.0 or later, but libxml2.2.dylib provides version 10.0.0
我在stackoverflow上看到其他人报告了类似的问题,有一个人说这个问题可能与virtualenv有关,但没有解决方案。
再一次:python 代码运行完美没有 virtualenv!但是在 virtualenv 中,我无法让它工作。
我在 Mac 上使用 Anaconda Python 2.7。
我将不胜感激任何帮助!
最佳答案
我遇到了同样的错误并偶然发现了这个 link ,搜索不兼容库报错后“libxml2.2.dylib provides version 10.0.0”
安装对我有用的 libxml2:
brew install libxml2
brew link --force libxml2
关于Python 错误信息 "Incompatible library version"libxml 和 etree.so,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37354161/