如何在 CentOS 机器上为多个 python 解释器安装 psycopg2?

如何在 CentOS 机器上为多个 python 解释器安装 psycopg2?

我有一个 CentOS 5.5 盒子,它预装了 Python 2.4。我想要 2.6,所以过去常常yum从 EPEL 存储库获取它。我也曾经yum安装过 psycopg2 包,但它安装的是 Python 2.4。

我尝试复制/usr/lib/python2.4/site-packages/psycopg2//usr/lib/python2.6/site-packages/,当我运行我的脚本时,它起作用了......但它给了我一个警告,说

/usr/lib/python2.6/site-packages/psycopg2/__init__.py:69: RuntimeWarning: Python C API version mismatch for module _psycopg: This Python has API version 1013, module _psycopg has version 1012.

所以看起来这里发生了某种版本问题,我想知道修复它的最佳方法是什么。我应该忽略警告并继续吗?有没有办法yum安装适用于 Python 2.6 的 psycopg2?我应该从源代码安装使用python26 setup.py install?我知道从源代码安装是在 CentOS 中一般是不允许的,所以我希望这是最后的手段,除非这是唯一的选择。我只是不想搞砸yum

答案1

我尝试复制/usr/lib/python2.4/site-packages/psycopg2//usr/lib/python2.6/site-packages/...

那不应该起作用。

如果你想要psycopg2多个 Python 解释器可用,你有几个选择……我喜欢virtualenv用于在系统上同时处理多个 Python 安装。这样,您可以根据需要拥有任意数量的沙盒模块版本组合。

如果你只想在 Python2.6 库所在的位置安装psycopg2,那么我们需要明确 Python 解释器...我们假设 Python2.6 安装在/usr/bin/python26。我假设你已经满足了 Python2.6 安装中的依赖关系psycopg2...此时,下载psycopg2 压缩包,解压,cd进入解压的存档目录,然后(以 root 身份)运行/usr/bin/python26 setup.py install。这将安装psycopg2Python2.6。

相关内容