如何在virtualenv中降级Cython?

时间:2015-07-11 21:31:43

标签: python install pip virtualenv cython

如何在virtualenv中降级Cython?

我是这样创建的:

virtualenv -p python3.4 .
pip install cython

然后安装了版本Cython-0.22.1.tar.gz。 但是,我正在尝试在virtualenv中安装Kivy,显然当安装了Cython版本时,Cython有一个不允许pip install kivy成功完成的错误。有人提到你必须降级Cython才能让Kivy编译。

所以我试过了:

pip uninstall cython
pip install cython 0.20

给了我:

Using cached Cython-0.22.1.tar.gz
Collecting 0.21.2
Could not find a version that satisfies the requirement 0.21.2 (from versions: )
No matching distribution found for 0.21.2

所以似乎Cython的旧版本在某种程度上不可用?

我如何降级呢?

修改#1 : 输出pip --version:     点7.1.0

2 个答案:

答案 0 :(得分:2)

您使用的是哪个版本的点子?

  • pip< 6.0然后使用--ignore-installed选项
  • 运行安装
  • pip> = 6.0然后使用--no-cache-dir选项

答案 1 :(得分:2)

在此评论中提及cel时,用于此目的的正确命令不是pip install cython 0.20,而是pip install cython==0.20。这解决了我的问题,并且以下Kivy安装(pip install kivy)没有错误地运行。

也许这会对绊倒这个答案的人有用:

使用Kivy设置virtualenv进行开发的完整程序:

  1. 需要安装的依赖项:

    1. sudo apt-get install mercurial
    2. sudo apt-get install python3-dev python3-numpy libsdl-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsmpeg-dev libportmidi-dev libavformat-dev libswscale-dev
    3. sudo apt-get build-dep python-pygame
  2. 创建virtualenv

    1. virtualenv --no-site-packages --distribute -p python3.4
  3. 设置virtualenv

    1. pip install --upgrade pip
    2. pip install cython==0.20
    3. pip install hg+http://bitbucket.org/pygame/pygame
    4. pip install kivy