Virtualenv与此系统或可执行文件不兼容。

21 浏览
0 Comments

Virtualenv与此系统或可执行文件不兼容。

正在尝试在我的mac OSX 10.10.05上创建虚拟环境。

已经成功在其他计算机的linux和Windows操作系统上通过终端建立过VirtualEnv。

尝试通过将WORK_ON路径添加到我的bash配置文件进行故障排除,但未能解决问题。在线论坛似乎没有得到解决,建议使用mkvirtualenv,但似乎无法通过pip、conda和easy_install下载该软件包...

无论如何,如果您能提供帮助,那将不胜感激。

以下是终端的输出:

joshua ~ $ pip install --upgrade virtualenv
Requirement already up-to-date: virtualenv in ./anaconda/lib/python3.5/site-packages
joshua ~ $ virtualenv -p python3 test
Running virtualenv with interpreter /Users/joshua/anaconda/bin/python3
Using base prefix '/Users/joshua/anaconda'
New python executable in /Users/joshua/test/bin/python3
Also creating executable in /Users/joshua/test/bin/python
ERROR: The executable /Users/joshua/test/bin/python3 is not functioning
ERROR: It thinks sys.prefix is '/Users/joshua' (should be '/Users/joshua/test')
ERROR: virtualenv is not compatible with this system or executable

...试图卸载virtualenv

  Successfully uninstalled virtualenv-15.1.0
joshua ~ $ pip install virtualenv
Collecting virtualenv
  Using cached virtualenv-15.1.0-py2.py3-none-any.whl
Installing collected packages: virtualenv
Successfully installed virtualenv-15.1.0
joshua ~ $ virtualenv test -v
Using base prefix '/Users/joshua/anaconda'
Creating /Users/joshua/test/lib/python3.5
Symlinking Python bootstrap modules
  Symlinking /Users/joshua/test/lib/python3.5/config-3.5m
  Symlinking /Users/joshua/test/lib/python3.5/lib-dynload
  Symlinking /Users/joshua/test/lib/python3.5/plat-darwin
  Symlinking /Users/joshua/test/lib/python3.5/os.py
  Ignoring built-in bootstrap module: posix
  Symlinking /Users/joshua/test/lib/python3.5/posixpath.py
  Cannot import bootstrap module: nt
  Symlinking /Users/joshua/test/lib/python3.5/ntpath.py
  Symlinking /Users/joshua/test/lib/python3.5/genericpath.py
  Symlinking /Users/joshua/test/lib/python3.5/fnmatch.py
  Symlinking /Users/joshua/test/lib/python3.5/locale.py
  Symlinking /Users/joshua/test/lib/python3.5/encodings
  Symlinking /Users/joshua/test/lib/python3.5/codecs.py
  Symlinking /Users/joshua/test/lib/python3.5/stat.py
  Cannot import bootstrap module: UserDict
  Cannot import bootstrap module: copy_reg
  Symlinking /Users/joshua/test/lib/python3.5/types.py
  Symlinking /Users/joshua/test/lib/python3.5/re.py
  Cannot import bootstrap module: sre
  Symlinking /Users/joshua/test/lib/python3.5/sre_parse.py
  Symlinking /Users/joshua/test/lib/python3.5/sre_constants.py
  Symlinking /Users/joshua/test/lib/python3.5/sre_compile.py
  Cannot import bootstrap module: _abcoll
  Symlinking /Users/joshua/test/lib/python3.5/warnings.py
  Symlinking /Users/joshua/test/lib/python3.5/linecache.py
  Symlinking /Users/joshua/test/lib/python3.5/abc.py
  Symlinking /Users/joshua/test/lib/python3.5/io.py
  Symlinking /Users/joshua/test/lib/python3.5/_weakrefset.py
  Symlinking /Users/joshua/test/lib/python3.5/copyreg.py
  Symlinking /Users/joshua/test/lib/python3.5/tempfile.py
  Symlinking /Users/joshua/test/lib/python3.5/random.py
  Symlinking /Users/joshua/test/lib/python3.5/__future__.py
  Symlinking /Users/joshua/test/lib/python3.5/collections
  Symlinking /Users/joshua/test/lib/python3.5/keyword.py
  Symlinking /Users/joshua/test/lib/python3.5/tarfile.py
  Symlinking /Users/joshua/test/lib/python3.5/shutil.py
  Symlinking /Users/joshua/test/lib/python3.5/struct.py
  Symlinking /Users/joshua/test/lib/python3.5/copy.py
  Symlinking /Users/joshua/test/lib/python3.5/tokenize.py
  Symlinking /Users/joshua/test/lib/python3.5/token.py
  Symlinking /Users/joshua/test/lib/python3.5/functools.py
  Symlinking /Users/joshua/test/lib/python3.5/heapq.py
  Symlinking /Users/joshua/test/lib/python3.5/bisect.py
  Symlinking /Users/joshua/test/lib/python3.5/weakref.py
  Symlinking /Users/joshua/test/lib/python3.5/reprlib.py
  Symlinking /Users/joshua/test/lib/python3.5/base64.py
  Symlinking /Users/joshua/test/lib/python3.5/_dummy_thread.py
  Symlinking /Users/joshua/test/lib/python3.5/hashlib.py
  Symlinking /Users/joshua/test/lib/python3.5/hmac.py
  Symlinking /Users/joshua/test/lib/python3.5/imp.py
  Symlinking /Users/joshua/test/lib/python3.5/importlib
  Symlinking /Users/joshua/test/lib/python3.5/rlcompleter.py
  Symlinking /Users/joshua/test/lib/python3.5/operator.py
  Symlinking /Users/joshua/test/lib/python3.5/_collections_abc.py
  Symlinking /Users/joshua/test/lib/python3.5/_bootlocale.py
Creating /Users/joshua/test/lib/python3.5/site-packages
Writing /Users/joshua/test/lib/python3.5/site.py
Writing /Users/joshua/test/lib/python3.5/orig-prefix.txt
Writing /Users/joshua/test/lib/python3.5/no-global-site-packages.txt
Creating parent directories for /Users/joshua/test/include
Symlinking /Users/joshua/test/include/python3.5m
Creating /Users/joshua/test/bin
New python executable in /Users/joshua/test/bin/python
Changed mode of /Users/joshua/test/bin/python to 0o755
Testing executable with /Users/joshua/test/bin/python -c "import sys;out=sys.stdout;getattr(out, "buffer", out).write(sys.prefix.encode("utf-8"))"
ERROR: The executable /Users/joshua/test/bin/python is not functioning
ERROR: It thinks sys.prefix is '/Users/joshua' (should be '/Users/joshua/test')
ERROR: virtualenv is not compatible with this system or executable

以下是当前的bash配置文件:

# Enable tab completion
source ~/git-completion.bash
# colors!
green="\[\033[0;32m\]"
blue="\[\033[0;34m\]"
purple="\[\033[0;35m\]"
reset="\[\033[0m\]"
# Change command prompt
source ~/git-prompt.sh
export GIT_PS1_SHOWDIRTYSTATE=1
# '\u' adds the name of the current user to the prompt
# '\$(__git_ps1)' adds git-related stuff
# '\W' adds the name of the current directory
export PS1="$purple\u$green\$(__git_ps1)$blue \W $ $reset"
alias subl="/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl"
# Add Path
export PATH="$HOME/anaconda/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$PATH"
# export PATH=$PATH:/users/Joshua/anaconda/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
# Locale 
$ export LC_ALL=en_US.UTF-8
$ export LANG=en_US.UTF-8

admin 更改状态以发布 2023年5月20日
0
0 Comments

\n\n我在尝试在一个新的系统上安装py2.7时遇到过相同的问题。根本原因是virtualenv是py3.7的一部分,因此不兼容。

$  virtualenv -p python2.7 env
Running virtualenv with interpreter /usr/local/bin/python2.7
New python executable in /Users/blah/env/bin/python
ERROR: The executable /Users/blah/env/bin/python is not functioning
ERROR: It thinks sys.prefix is u'/Library/Frameworks/Python.framework/Versions/2.7' (should be u'/Users/blah/env')
ERROR: virtualenv is not compatible with this system or executable
$ which virtualenv
/Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenv
# install proper version of virtualenv 
$ pip2.7 install virtualenv
$ /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv -p python2.7 env
$ . ./env/bin/activate
(env) $ 

0
0 Comments

我的有限理解是,我的Python解释器和包是在Anaconda下使用Conda软件包管理器进行管理的,我的虚拟环境最初是使用pip安装的。

使用pip卸载虚拟环境并使用conda重新安装修复了问题

pip uninstall virtualenv
conda install virtualenv

0