16

问题

使用 Cygwin 将 Python 3.0 与 Python 2.x 一起安装的正确方法是什么?

笔记

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

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

任何指向该主题指南的指针将不胜感激。我似乎在 cygwin 站点或 python.org 上都找不到。

4

5 回答 5

15

截至昨天(2012 年 7 月 25 日星期三),Python 3.2.3 已包含在标准 Cygwin 安装程序中。只需再次运行 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
于 2012-07-26T09:59:15.370 回答
10

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

于 2009-01-13T21:55:50.477 回答
5

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

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

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

根据您的安装位置调整路径,如果在 Windows 上,请注意确保您使用的是 UNIX 换行符,否则您将收到诸如“bash: $'\r': command not found”之类的消息。

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

于 2010-07-19T12:51:03.893 回答
3

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

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

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

我为 Cygwin 做同样的事情,因为能够安装我自己的模块而不用担心 Cygwin 更新会破坏它们对我来说更好。

如果并且当我学习 Python(我想)时,我打算做同样的事情。

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

对于真正严肃的应用程序(比如一个主要的网络应用程序),我什至可能会进行一个独立的安装,该安装由一个专用于该应用程序的用户拥有。

于 2009-02-05T17:34:14.643 回答
0

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

python3 script1.py
于 2014-05-07T03:03:12.343 回答