【发布时间】:2017-01-10 22:34:41
【问题描述】:
我在 Windows 周年版 Linux 子系统 (WSL) 上使用 Anaconda 4.1.1 安装了 Python 3.5.2,它或多或少是嵌入式 Ubuntu 14.04.5 LTS。
我使用以下方式安装了 virtualenv:
pip install virtualenv
然后我尝试在~/temp内部创建一个虚拟环境:
user@host:~$ virtualenv ~/temp/test
Using base prefix '/home/user/anaconda3'
New python executable in /home/user/temp/test/bin/python
/home/user/temp/test/bin/python: error while loading shared libraries: libpython3.5m.so.1.0: cannot open shared object file: No such file or directory
ERROR: The executable /home/user/temp/test/bin/python is not functioning
ERROR: It thinks sys.prefix is '/home/user' (should be '/home/user/temp/test')
ERROR: virtualenv is not compatible with this system or executable
很容易假设这只是一个 WSL 问题,但到目前为止一切正常,我在 Ubuntu 上看到过类似的错误报告。知道问题出在哪里吗?
【问题讨论】:
-
我认为你需要传递
-p python3选项来告诉virtualenv你想要一个Python 3 解释器,即尝试virtualenv ~/temp/test -p python3看看是否会改变。 -
不;添加
-p python3没有任何改变。 -
anaconda 更喜欢您使用 conda 创建环境。另见anaconda-issues。
-
@bren,我们都有自己的偏好,您甚至可以争辩说 conda 比 pip 更好,我不会不同意。但这是一个单独的问题。您没有解决问题,您提供的链接也没有解决问题——即使它有 cmets 争论哪个工具更好。问题在于是什么导致了 pip 错误——而不是是否有人更喜欢除了 pip 之外的东西。
标签: python linux ubuntu virtualenv windows-subsystem-for-linux