升级Python3.10后安装psycopg2-binary出现setup.py执行错误如何解决
问题解决方案
1. 解决psycopg2安装报错
核心原因是当前环境缺少psycopg2编译所需的C++组件,无需安装完整编译工具,直接执行以下命令安装适配Python3.10的预编译版本即可:
- 先升级基础工具包:
pip install --upgrade pip setuptools wheel - 再安装指定版本psycopg2预编译包:
pip install psycopg2-binary==2.9.5
2. 恢复虚拟环境与项目依赖
卸载旧版本Python会导致关联的虚拟环境失效,全局依赖也被清空,直接重建虚拟环境即可:
- 删除原有失效的虚拟环境文件夹
- 用Python3.10重建虚拟环境:
python -m venv venv - 激活虚拟环境:
- Windows CMD环境执行:
venv\Scripts\activate.bat - Windows PowerShell环境执行:
venv\Scripts\Activate.ps1
注意:所有项目相关的命令都需要在虚拟环境激活状态下执行,避免污染全局Python环境
- Windows CMD环境执行:
- 如果项目根目录有requirements.txt依赖清单,直接批量安装依赖:
pip install -r requirements.txt - 没有依赖清单则逐个安装项目所需依赖,完成后执行以下命令生成清单:
pip freeze > requirements.txt
3. 解决heroku部署报错
本地环境恢复正常后,先验证本地命令无报错,再调整部署配置:
- 本地执行静态资源收集命令验证功能正常:
python manage.py collectstatic - 检查项目根目录的runtime.txt文件,确保内容为
python-3.10.0,和当前使用的Python版本匹配 - 如不需要自动收集静态资源,可在项目settings.py中添加配置跳过自动执行:
DISABLE_COLLECTSTATIC = 1 - 所有调整完成后提交代码,重新执行部署命令:
git push heroku master
内容的提问来源于stack exchange,提问作者Shikhar Srivastava
相关产品推荐
相关产品推荐

