Debian系统中Qiling框架导入Qiling类失败,模拟器代码无法执行
Qiling框架导入错误:ImportError: cannot import name 'Qiling' from 'qiling'
问题详情
在Debian发行版上安装Qiling框架后,导入Qiling类时触发导入错误,错误信息:
ImportError: cannot import name 'Qiling' from 'qiling' (unknown location)
用户测试代码:
from qiling import Qiling if __name__ == "__main__": # Initialize Qiling with the path to the binary and the rootfs ql = Qiling(["hello"], "/home/kali/hello") # Run the emulation ql.run()
堆栈跟踪信息:
Traceback (most recent call last): File "/home/kali/emulator1.py", line 4, in <module> from qiling import Qiling ImportError: cannot import name 'Qiling' from 'qiling' (unknown location)
解决方法
1. 适配Qiling新版本API
Qiling 1.4.0及以上版本重构了模块结构,Qiling类不再直接位于根模块下,需调整导入路径:
from qiling.core import Qiling from qiling.const import QL_VERBOSE if __name__ == "__main__": # 初始化时需指定verbose参数(可选,控制日志输出级别) ql = Qiling(["hello"], "/home/kali/hello", verbose=QL_VERBOSE.DEFAULT) ql.run()
2. 重新安装兼容版本
若想继续使用旧版API,可安装1.3.4版本:
# 先卸载现有版本 pip uninstall -y qiling # 安装指定稳定版 pip install qiling==1.3.4
3. 排查环境冲突
- 检查当前工作目录是否存在名为
qiling.py的文件,这会覆盖官方库,如有则删除或重命名。 - 确认Python环境与Qiling安装环境一致:执行
pip --version和python --version,确保二者路径匹配,避免虚拟环境或多版本Python导致的依赖问题。
内容的提问来源于stack exchange,提问作者user31869157
相关产品推荐
相关产品推荐

