conda env中的错误点 [英] Wrong pip in conda env

查看:132
本文介绍了conda env中的错误点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个叫做Birdid的conda env.

I have a conda env called birdid.

在环境中工作时(即我做了source activate bird_dev),显示了要提供的软件包列表

While working in the env (i.e. I did source activate bird_dev), showing the list of the packages give

(bird_dev)...$ conda list
# packages in environment at /home/jul/Development/miniconda/envs/bird_dev:
#
...
pep8                      1.6.2                    py27_0  
pip                       7.1.2                    py27_0  
pixman                    0.26.2                        0  
...

但是当尝试查看使用了什么pip时,我得到了

but when trying to see what pip is used I get

(bird_dev)...$ which pip
/usr/local/bin/pip

找到正确的python

(bird_dev)...$ which python
/home/jul/Development/miniconda/envs/bird_dev/bin/python

有人可以帮忙吗?

有关已安装版本的更多详细信息

检查哪个-a点

(bird_dev)...$ which -a pip
/usr/local/bin/pip
/usr/bin/pip

/usr/bin/pip中的版本很旧.

(bird_dev)...$ /usr/bin/pip -V
pip 1.5.4 from /usr/lib/python2.7/dist-packages (python 2.7)    
(bird_dev)....$ /usr/local/bin/pip -V
pip 6.1.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)

env中实际上没有点子

There is actually no pip in the env

$ ll /home/jul/Development/miniconda/envs/bird_dev/bin/ | grep pip

不返回任何内容

/home/jul/Development/miniconda/bin/pip

$ /home/jul/Development/miniconda/bin/pip -V
pip 6.1.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)

,但不是conda list列出的版本,它是python脚本(!)

but it is not the version listed by conda list, and it is a python script (!)

$ cat /home/jul/Development/miniconda/bin/pip
#!/home/jul/Development/miniconda/bin/python
if __name__ == '__main__':
    import sys
    from pip import main

    sys.exit(main())

echo $ PATH

(bird_dev)...$ echo $PATH
/home/jul/Development/miniconda/envs/bird_dev/bin:/home/jul/torch/install/bin:/home/jul/torch/install/bin:/home/jul/torch/install/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

尝试强制安装

(bird_dev)...$ conda install --force pip
Fetching package metadata: ....
Solving package specifications: .
Package plan for installation in environment /home/jul/Development/miniconda/envs/bird_dev:

The following packages will be UPDATED:

    pip: 7.1.2-py27_0 --> 7.1.2-py27_0

Proceed ([y]/n)? y

[      COMPLETE      ]|##################################################################################################################################################################################| 100%
Extracting packages ...
[      COMPLETE      ]|##################################################################################################################################################################################| 100%
Unlinking packages ...
[      COMPLETE      ]|##################################################################################################################################################################################| 100%
Linking packages ...
[      COMPLETE      ]|##################################################################################################################################################################################| 100%
(bird_dev)...$ which pip
/home/jul/Development/miniconda/envs/bird_dev/bin/pip
(bird_dev)...$ /home/jul/Development/miniconda/envs/bird_dev/bin/pip -V
pip 6.1.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)
(bird_dev)...$ cat /home/jul/Development/miniconda/envs/bird_dev/bin/pip 
#!/home/jul/Development/miniconda/envs/bird_dev/bin/python
if __name__ == '__main__':
    import sys
    from pip import main

    sys.exit(main())

很奇怪.

推荐答案

您可能已设置PYTHONPATH.我建议取消设置它,并从设置它的~/.bashrc中删除所有行.这将导致您的任何conda环境的Python都先查看该位置.

You probably have PYTHONPATH set. I would recommend unsetting it, and removing any lines from ~/.bashrc that set it. It will cause any of your conda environments' Pythons to look in that location before themselves.

这篇关于conda env中的错误点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆