Fedora 40执行pip install -r requirements.txt遇OSError报错求助
解决方法
问题根源
你的requirements.txt第190行包含了Ubuntu系统上的本地编译路径/builddir/build/BUILD/libselinux-3.6/src——这是在Ubuntu环境用pip freeze生成依赖列表时,把系统级的libselinux Python绑定以本地路径形式写入的,Fedora系统不存在该路径,因此安装失败。
具体修复步骤
- 打开
requirements.txt,找到第190行的/builddir/build/BUILD/libselinux-3.6/src条目,直接删除该行。 - 在Fedora 40上安装系统自带的libselinux Python绑定:
sudo dnf install python3-libselinux - 重新执行依赖安装命令:
pip install -r requirements.txt --user
后续建议
以后生成requirements.txt时,避免直接使用pip freeze(会包含系统包和本地路径类包),可以用pipreqs工具仅扫描项目代码实际用到的依赖,生成更干净的依赖列表:
pip install pipreqs pipreqs /path/to/your/project
内容的提问来源于stack exchange,提问作者alexmulo
相关产品推荐
相关产品推荐

