在Cygwin上安装Python 3.0

时间:2009-01-13 20:00:21

标签: python windows cygwin

问题

使用Cygwin安装Python 3.0和Python 2.x的正确方法是什么?

注释

我已经有了Cygwin的工作副本,并且Python 2.x安装在Cygwin中(/lib/python2.x,而不是c:\python2.x)。

此外,我希望能够单独调用python 3(并且只是故意),让python指向Python 2.x以保留现有的依赖项。我想使用python30或其他替代方案。

非常感谢任何指向该主题的指南。我似乎无法在cygwin网站或python.org找到一个。

5 个答案:

答案 0 :(得分:14)

截至昨天(2012年7月25日星期三),Python 3.2.3 is included in the standard Cygwin installer。只需再次运行Cygwin的setup.exe(如果需要,再次从cygwin.com下载),您应该可以像任何其他软件包一样选择和安装它。

这将安装为python3,保留现有的2.x安装:

$ python -V
Python 2.6.8
$ python3 -V
Python 3.2.3
$ ls -l $(which python) $(which python3)
lrwxrwxrwx 1 me Domain Users 13 Jun 21 15:12 /usr/bin/python -> python2.6.exe
lrwxrwxrwx 1 me root         14 Jul 26 10:56 /usr/bin/python3 -> python3.2m.exe

答案 1 :(得分:9)

Python 3.0源代码的标准make install目标不安装python二进制文件。而是在最后制作安装打印

* Note: not installed as 'python'.
* Use 'make fullinstall' to install as 'python'.
* However, 'make fullinstall' is discouraged,
* as it will clobber your Python 2.x installation.

所以不要担心。

如果您想轻松删除整个安装,请执行configure --prefix=/usr/local/py3

之类的操作

答案 2 :(得分:5)

要以非侵入方式使用Python 3,如果您还没有,请在用户主目录中创建一个名为“.bash_profile”的文件。

设置指向Python 3安装的别名。在我的Windows机器上看起来像这样:

alias python3=/cygdrive/d/apps/Python31/python
export python3

根据安装位置调整路径,如果在Windows上,请注意确保使用UNIX换行符,否则会收到“bash:$'\ r':命令未找到的消息”

您现在应该能够使用“python3”命令,而您还没有修改Cygwin附带的Python版本。

答案 3 :(得分:3)

在Perl世界中,我总是安装自己的,带有前缀:

./configure --prefix=/usr/local/perl/5.10.0

我从不想处理我的操作系统附带的perl,因为我不想为它安装库,并且可能会弄乱操作系统中编写的脚本。

我为Cygwin做了同样的事情,因为我能够安装自己的模块更好,而不用担心Cygwin更新会丢弃它们。

如果我学习Python(我愿意),我打算做同样的事情。

这样我可以将各个应用程序从一个版本独立升级到另一个版本。

对于非常严肃的应用程序(如主要的Web应用程序),我甚至可以进行专用于该应用程序的用户所拥有的自包含安装。

答案 4 :(得分:0)

而不是从命令行调用python,只需像这样调用python3:

python3 script1.py