安装libvirt-python==1.2.2时python setup.py egg_info执行失败求助
刚碰到过一模一样的情况,这是因为libvirt-python作为libvirt的Python绑定包,编译安装时依赖系统里的libvirt开发库,你的系统要么没装这个开发库,要么pkg-config找不到它的配置文件libvirt.pc。先把你遇到的错误核心信息列出来:
在执行依赖安装时,尝试收集
libvirt-python==1.2.2(来自/requirements/requirements.txt第14行),下载对应源码包后执行python setup.py egg_info命令时出现如下错误:
libvirt包未在pkg-config搜索路径中找到,建议将包含libvirt.pc的目录添加到PKG_CONFIG_PATH环境变量,未找到'libvirt'包,随后出现回溯信息,最终命令执行失败,错误码为1。
下面是具体的解决办法:
1. 优先安装系统自带的libvirt开发依赖包
这是最省心的解决方式,根据你的Linux发行版选择对应命令:
- 如果你用Debian/Ubuntu系列:
sudo apt-get update && sudo apt-get install libvirt-dev - 如果你用RHEL/CentOS/Fedora系列:
# 旧版本用yum sudo yum install libvirt-devel # 新版本用dnf sudo dnf install libvirt-devel
安装完成后,libvirt.pc会被放到系统默认的pkg-config搜索路径(比如/usr/lib/pkgconfig或/usr/lib64/pkgconfig),再重新执行pip安装就能正常运行了。
2. 如果你是手动编译安装的libvirt
如果是自己编译安装libvirt到了自定义路径(比如/opt/libvirt),就需要手动告诉pkg-config配置文件的位置:
# 替换成你的libvirt安装目录下的pkgconfig路径 export PKG_CONFIG_PATH=/opt/libvirt/lib/pkgconfig:$PKG_CONFIG_PATH # 然后重新执行安装命令 pip install libvirt-python==1.2.2
3. 快速检查是否配置成功
可以先执行这个命令,确认pkg-config能识别到libvirt:
pkg-config --list-all | grep libvirt
如果有输出,说明路径配置没问题;如果没输出,再检查开发包是否安装正确,或者自定义路径是否填错。
内容的提问来源于stack exchange,提问作者pradeep patidar

