你的问题现在分两层greenlet 编译失败导致pip install Flask-SQLAlchemy未能完整安装 SQLAlchemy所以运行时提示No module named sqlalchemy。核心必须先解决 greenlet 的安装才能继续。既然你已安装gcc-c但仍报错我们采用更直接的方法——绕过编译安装预编译的旧版 greenlet适用于 Python 3.6。一步解决方案推荐1. 安装提供预编译 wheel 的 greenlet 1.1.3pipinstallgreenlet1.1.3这个版本为 Python 3.6 提供了manylinux预编译包不需要本地编译。如果成功继续安装剩下的包pipinstallFlask Flask-SQLAlchemy Flask-Login2. 如果第 1 步仍然尝试编译并失败强制从 PyPI 下载 wheel不使用本地构建pipinstall--only-binarygreenletgreenlet1.1.33. 验证 SQLAlchemy 是否已安装pip list|grepSQLAlchemy如果没有手动安装greenlet 问题已解决SQLAlchemy 安装不会触发 greenlet 编译因为 greenlet 已存在pipinstallSQLAlchemy备选方案完全绕过 greenlet不需要异步 SQLAlchemy如果你不需要异步数据库驱动可以安装不依赖 greenlet 的 SQLAlchemy 1.3.xpip uninstall greenlet-ypipinstallSQLAlchemy1.3.24 pipinstallFlask-SQLAlchemy2.5.1# 兼容 SQLAlchemy 1.3pipinstallFlask Flask-Login注意Flask-SQLAlchemy 3.x 需要 SQLAlchemy 1.4而 1.4 以上版本在某些平台上会拉取 greenlet。所以降级两个包即可。终极调试如果以上都失败请执行以下命令并贴出完整输出我帮你分析g--versionpython3-cimport distutils.sysconfig; print(distutils.sysconfig.get_config_var(CC))pip debug|grepCompatible tags同时检查是否缺少 Python 3.6 头文件ls/usr/include/python3.6m/Python.h如果提示No such file or directory则安装yuminstall-ypython3-devel目前最可能的成功路径执行第 1 步pip install greenlet1.1.3。绝大多数 CentOS 7 / Python 3.6 环境都能通过此方法解决。