代码之家  ›  专栏  ›  技术社区  ›  timpone

在python的私有版本中安装setuptools

  •  7
  • timpone  · 技术社区  · 15 年前

    一个新手问题,但是。。。。。

    我已经在系统版本为2.3(2.7 at~/python2.7/bin/python)的主机上安装了python2.7。我想添加一些包,如MySQLdb,但需要setuptools。

    说明中说可以使用--prefix作为参数。但是,如果我执行以下操作: sh setuptools-0.6c11-py2.7.egg--前缀=~/python2.7/bin/python

    -bash-3.00$sh setuptools-0.6c11-py2.7.egg——前缀=~/python2.7/bin/python

    我没有正确使用--prefix命令吗?当然,键入sh setuptools-0.6c11-py2.7.egg--help也找不到python。

    5 回复  |  直到 15 年前
        1
  •  3
  •   PJ Eby    15 年前

    在路径中添加~/python2.7/bin,例如:

    $ export PATH=$PATH:~/python2.7/bin
    $ sh setuptools-0.6.c11-py2.7.egg
    

    这样就不需要前缀了,因为python本身会告诉setuptools它的默认前缀是什么。

        2
  •  5
  •   jedi_coder    15 年前

    在处理多个python版本时,我通常显式调用所需的版本,如下所示:

    $ /usr/bin/python2.6 setup.py build
    $ sudo /usr/bin/python2.6 setup.py install
    

    还有一种方法可以在安装时进行初步的“chroot”:

    $ python setup.py install --root /tmp
    

    当您希望临时安装到某个目录中时,这非常有用,该目录稍后将用于构建特定于发行版的包。

    这个工作流程总是很适合我。

        3
  •  2
  •   SaiyanGirl dland    12 年前

    wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz#md5=7df2a529a074f613b509fb44feefe74e
    tar -zxvf setuptools-0.6c11.tar.gz
    cd setuptools-0.6c11/
    sudo python2.5 setup.py build
    sudo python2.5 setup.py install
    

    以下命令将python模块安装到2.5:

    sudo easy_install-2.5 pil
    

    此命令将模块安装到2.7

    sudo easy_install-2.7 pil
    
        4
  •  1
  •   Hengjie    13 年前

    所以我遇到了同样的问题,上面的解决方案对我不起作用。然而,真正起作用的是(有点黑)创建一个临时符号链接,指向Python的安装位置:

    sudo mv /usr/bin/python /usr/bin/python.bak
    
    sudo ln -s ~/python2.7/bin/python /usr/bin/python
    
    sh setuptools-0.6c11-py2.7.egg --prefix=~/python2.7/bin/python 
    
    rm /usr/bin/python
    
    mv /usr/bin/python.bak /usr/bin/python
    

    警告:这是假设安装了Python,所以如果mv命令失败,那就可以了。

        5
  •  0
  •   Tal Weiss    12 年前

    我也有同样的错误,因为Python2.7不在sudo使用的路径上。
    我刚刚补充说:
    alias sudo='sudo env PATH=$PATH'