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

如何让cygwin中的python使用windows中安装的包?

  •  0
  • hidemyname  · 技术社区  · 8 年前

    我在cygwin和windows上都安装了python。然而,cygwin的站点包中没有安装任何包。这里是目录 /usr/lib/python2.7/site-packages . 相反,它们都安装在 C:\Python\Lib\site-packages . 自从我在 C: \Python\Lib\site包 , pip 在cygwin中,将跳过这些包的安装。有没有一种方法可以直接在windows中使用这些软件包?

    1 回复  |  直到 8 年前
        1
  •  1
  •   Doug Henderson    8 年前

    首先,确保(在cygwin bash中) python2 和/或 python3 在路径中的程序的windows版本之前。在撰写本文时,如果安装了python 2,可以将其称为 python 蟒蛇2 ,而调用python 3 蟒蛇3 . 随着越来越多的Linux发行版切换到使用python 3作为默认版本,这种情况可能会改变。使用 python -V python3 -V 验证在运行bash时是否获得了python的cygwin版本。(我不再安装python 2。)

    $ which python
    which: no python in (**"your path"**)
    $ which python3
    /usr/bin/python3
    $ python3 -V
    Python 3.6.4
    

    然后验证您可以为python运行适当版本的pip。要绝对确定您使用的是哪个版本,请运行

    $ python3 -m pip --version
    pip 9.0.1 from /usr/lib/python3.6/site-packages (python 3.6)
    

    现在,您应该能够从安装大多数软件包 PiPI 通过替换 pip pip3 具有 python -m pip python3 -m pip .

    如果尝试安装需要编译的包,即在windows上作为二进制包分发的包,则需要 gcc 编译器工具链,可能还有 python-devel python3-devel 包裹顺便说一句,始终使用最新的cygwin安装程序 cygwin.com . 在安装程序包之前,您可能还需要使用安装程序安装任何所需的cygwin程序包。

    HTH公司

    道格