在PyPy下安装Python eggs

16

如何在PyPy下安装Python egg?

在安装过程中,PyPy创建了/usr/lib64/pypy-1.5/site-packages/目录。因此,我尝试使用easy_install并将prefix设置为该目录,但它抱怨该目录不是鸡蛋的有效目录。我是否只需从/usr/lib/python2.7/site-packages复制鸡蛋,或者只需更改一些配置即可使用easy_install(也许需要更改配置文件)?

我的工作环境是Fedora 15 Beta,Python 2.7.1(/usr/bin/python),PyPy 1.5.0-alpha0 with GCC 4.6.0(在/usr/bin/pypy中安装yum的RPM),easy_install版本是:distribute 0.6.14(usr/bin/easy_install)。

1个回答

14

首先,你需要确保你已经为PyPy安装了适用的distribute。我不知道Fedora是如何打包的,但通常安装CPython的软件包并不能使它在PyPy中也可用。特别地,/usr/bin/easy_install 可能仅适用于CPython。

如果你使用了“正常”的PyPy安装,那么你将有以下目录结构:

  • /opt/pypy-1.5/
    • bin/
    • site-packages/
    • lib-python/
    • lib_pypy/

然后你可以下载 http://python-distribute.org/distribute_setup.py 并执行它:

$ /opt/pypy-1.5/bin/pypy distribute_setup.py

现在,你应该有 /opt/pypy-1.5/bin/easy_install 这个文件,它会将包安装在 /opt/pypy-1.5/site-packages 目录下。

但是,我不知道 pypy 在 Fedora 中是如何打包的。如果它只是被安装在 /usr/bin 下,那么安装 distribute 可能会覆盖原始的 CPython 的 /usr/bin/easy_install。


成功了!谢谢!/usr/bin/easy_install 实际上是 CPython 的一部分。 不过,我刚刚下载了 distribute_setup.py 并在 pypy 上运行它。它将 easy_install 安装到 /usr/lib64/pypy-1.5/bin 中(因此没有覆盖任何与 CPython 相关的文件 - 可能是由于 CPython 和 PyPy 的不同 PYTHONPATH)。 - Dr McKay
distribute_setup.py的链接已经失效了,这个可以使用:http://python-distribute.org/distribute_setup.py - Erik
Distribute 不再维护,已经与 Setup Tools 合并。 - shad0w_wa1k3r

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接