我的服务器默认安装了 Python 2.6。我不敢乱改默认设置,所以我在不同的位置安装了 Python 2.7 和 Python 3.2,并根据需要使用 bash 别名在它们之间切换。我在使用pip
和apt-get
安装 Python 包时遇到了一些问题,因为它们作为文件安装egg
到 Python 2.6dist-packages
文件夹中。我已将其PYTHONPATH
设置为一个文件夹,我尝试将其复制到该文件夹中,egg
但没有成功。
我如何在 Python 安装之间复制 eggs,或者甚至在它们之间共享 eggs?
答案1
您不能(或不应尝试)在不同的 Python 版本之间复制或共享 eggs。您需要为每个版本单独安装每个包。
apt-get
如果您使用的 Python 版本不受该特定 Debian 版本支持,那么它将不会对您有帮助。
无论如何,执行此操作的基本方法是获取每个包的源代码并运行pythonX.Y setup.py install
(或任何特定命令)N 次。
或者,您可以为每个 Python 版本获取一个单独的副本easy_install
(使用上述方法),然后运行easy_install-X.Y package
(或在您安装它的任何位置)N 次。(pip
可能会以相同的方式工作,但我对此没有太多经验。)
管理所有这些的一个好方法是使用virtualenv
。为每个 Python 版本创建一个虚拟环境,激活它,然后直接运行python
或easy_install
或其他任何命令即可。这基本上是一种有组织且复杂的方法,可以准确地使用 bash 别名执行您尝试的操作。