部署Streamlit应用时无法安装PyGObject依赖求助
解决Streamlit部署时PyGObject/pycairo安装失败问题
问题根因
Streamlit默认部署环境是Ubuntu Linux,缺少pycairo、PyGObject编译必需的系统级依赖——尤其是pkg-config和相关开发库,仅通过pip安装Python包无法解决底层编译依赖问题。
解决步骤
1. 给requirements.txt添加系统依赖
在requirements.txt最顶部添加以下内容,Streamlit会自动先安装这些Ubuntu系统包:
apt: - pkg-config - libcairo2-dev - libgirepository1.0-dev - gir1.2-gtk-3.0
2. 精简Python依赖列表
删除没用的vext、vext.gi(这类是Windows适配工具,Linux环境不需要),保留核心依赖:
streamlit pycairo PyGObject # 你的其他项目依赖
3. 重新部署
提交修改后的文件到代码仓库,触发Streamlit重新部署即可。
注意点
- 本地Windows/macOS和Linux部署环境的依赖逻辑完全不同,本地正常不代表部署环境直接兼容
- 不要在Linux环境尝试安装冗余的manimce依赖,除非你的项目确实需要它
内容的提问来源于stack exchange,提问作者Aniket kajania
相关产品推荐
相关产品推荐

