news 2026/4/18 9:22:21

【CentOS7】CentOS 7 + Python 3.11 安装 SQLAlchemy 报错 greenlet 编译失败(阿里云 SCL Vault 源修复方案)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【CentOS7】CentOS 7 + Python 3.11 安装 SQLAlchemy 报错 greenlet 编译失败(阿里云 SCL Vault 源修复方案)

CentOS 7 + Python 3.11 安装 SQLAlchemy 报错 greenlet 编译失败(阿里云 SCL Vault 源修复方案)

本文只采用一种最简单、成功率最高的方案

切换到阿里云 CentOS 7 SCL Vault 源,安装 devtoolset-10 升级 gcc

适合人群:

  • CentOS 7(7.6 / 7.9 / 云厂商定制版)
  • Python 3.11
  • pip 安装 SQLAlchemy / greenlet 失败

关键词:
Failed building wheel for greenletcommand '/usr/bin/g++' failedCentOS 7 EOL


一、问题现象

在 CentOS 7 上使用 Python 3.11 执行:

pipinstallSQLAlchemy

常见报错如下:

error: command '/usr/bin/g++' failed with exit code 1 ERROR: Failed building wheel for greenlet

或者:

× Failed to build installable wheels for some pyproject.toml based projects ╰─> greenlet

二、问题根因(必须先搞清楚)

1️⃣ SQLAlchemy 依赖 greenlet

  • SQLAlchemy 1.4+ / 2.x
  • 默认依赖greenlet
  • greenletC++ 扩展模块,需要本地编译

2️⃣ Python 3.11 对编译器要求提高

  • greenlet 在 Python 3.11 中使用了更新的 C++ 特性
  • 至少需要 gcc ≥ 9(推荐 gcc 10)

3️⃣ CentOS 7 默认 gcc 太旧

CentOS 7 自带:

gcc 4.8.5

👉无法编译 greenlet(这是必然结果)


三、为什么 yum 装不到 devtoolset?

原因只有一个:

CentOS 7 已 EOL,官方 mirrorlist 仓库已下线

典型报错:

Could not retrieve mirrorlist http://mirrorlist.centos.org Cannot find a valid baseurl for repo: centos-sclo-rh

因此,继续使用官方源一定失败


四、唯一采用的解决方案:切换阿里云 SCL Vault 源

✔ 不改系统 gcc
✔ 成功率高
✔ 生产环境可用

下面是完整可执行步骤


五、完整修复流程(一步一步执行)

1️⃣ 备份原 SCL repo

sudomkdir-p /etc/yum.repos.d/backupsudomv/etc/yum.repos.d/CentOS-SCLo-*.repo* /etc/yum.repos.d/backup/

2️⃣ 配置阿里云 CentOS 7 SCL Vault 源

新建 repo 文件:

sudotee/etc/yum.repos.d/CentOS-SCLo.repo<<'EOF' [centos-sclo-rh] name=CentOS-7 - SCLo rh baseurl=https://mirrors.aliyun.com/centos/7/sclo/x86_64/rh/ enabled=1 gpgcheck=0 [centos-sclo-sclo] name=CentOS-7 - SCLo sclo baseurl=https://mirrors.aliyun.com/centos/7/sclo/x86_64/sclo/ enabled=1 gpgcheck=0 EOF

3️⃣ 刷新 yum 缓存

sudoyum clean allsudoyum makecache

4️⃣ 安装 devtoolset-10(gcc 10)

sudoyuminstall-y devtoolset-10

5️⃣ 启用新 gcc(关键步骤)

sclenabledevtoolset-10bash

验证:

gcc --version g++ --version# gcc 10.x

6️⃣ 安装 greenlet / SQLAlchemy

pipinstall-U pip setuptools wheel pipinstall--no-cache-dir greenlet pipinstall--no-cache-dir SQLAlchemy

验证:

python -<<'EOF' import greenlet import sqlalchemy print('OK') EOF

六、常见错误总结

  • ❌ 继续使用 mirrorlist.centos.org
  • ❌ 只升级 pip,不升级 gcc
  • ❌ 忽略 g++ 版本

只要gcc ≥ 9,greenlet 一定能编译通过。


七、结论

当你在 CentOS 7 + Python 3.11 环境中遇到:

Failed building wheel for greenlet

请直接记住这一条结论:

换阿里云 SCL Vault 源,安装 devtoolset-10,就够了。


如果本文帮你节省了时间,欢迎点赞 / 收藏 / 转发。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 0:00:13

量子算法VSCode环境搭建全解析,99%的人都忽略了这一步

第一章&#xff1a;量子算法的 VSCode 示例代码在现代量子计算开发中&#xff0c;Visual Studio Code&#xff08;VSCode&#xff09;已成为主流集成开发环境之一。借助 Quantum Development Kit&#xff08;QDK&#xff09;扩展&#xff0c;开发者可在本地高效编写、模拟和调试…

作者头像 李华
网站建设 2026/4/18 7:05:02

Knuff证书转换神器:3分钟掌握APNS推送证书管理秘诀

Knuff证书转换神器&#xff1a;3分钟掌握APNS推送证书管理秘诀 【免费下载链接】Knuff 项目地址: https://gitcode.com/gh_mirrors/knu/Knuff 还在为APNS推送证书格式转换而头疼吗&#xff1f;Knuff的证书转换功能让这一切变得简单高效。无论你是iOS开发新手还是资深工…

作者头像 李华
网站建设 2026/4/16 20:00:05

27、设计 SNMP MIB 的详细指南

设计 SNMP MIB 的详细指南 1. 在线信息提交 在查看当前列表时,我们会发现线上仅列出了企业编号、公司名称、联系人姓名和联系人电子邮件地址。为避免垃圾邮件机器人收集,建议使用专门的电子邮件地址,而非常用邮箱。可以创建一个通用的地址,以便将来将相关邮件转发给负责 …

作者头像 李华
网站建设 2026/4/17 8:50:22

【顶级科研团队都在用】量子计算文档智能生成系统大公开

第一章&#xff1a;量子计算镜像的文档生成在构建量子计算模拟环境时&#xff0c;自动化文档生成是确保系统可维护性和可扩展性的关键环节。通过集成代码注释与运行时元数据&#xff0c;可以动态生成反映量子电路结构、门操作序列及测量结果的完整技术文档。文档生成流程概述 解…

作者头像 李华